当前位置: 首页 > 知识库问答 >
问题:

如何通过无头驱动程序访问站点而不被拒绝权限

唐焕
2023-03-14
from selenium import webdriver

#Headless driver 

chrome_options = webdriver.ChromeOptions()

chrome_options.add_argument('--headless')
chrome_options.add_argument('--no-sandbox')                                             

driver1 = webdriver.Chrome(executable_path='./chromedriver', options=chrome_options, 
service_args=['--verbose', '--log-path=/tmp/chromedriver.log'])

driver1.get('https://www.size.co.uk/')
html = driver1.page_source
html
<html xmlns="http://www.w3.org/1999/xhtml"><head>\n<title>Access Denied</title>\n</head><body>\n<h1>Access Denied</h1>\n \nYou don\'t have permission to access "http://www.size.co.uk/" on this server.<p>\nReference #18.ac81655f.1548818550.73b12da\n\n\n</p></body></html>
driver = webdriver.Chrome('./chromedriver')
driver.get('https://www.size.co.uk/')
html = driver.page_source
driver.quit()
html

共有1个答案

柴泰平
2023-03-14

添加以下代码段可以为我返回页面:

user_agent = 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.50 Safari/537.36'    
chrome_options.add_argument('user-agent={0}'.format(user_agent))

该站点显然正在检查无头浏览器,然后拒绝它们访问。这里有一篇关于避免检测的文章:让Chrome无头无法检测

要获得驱动程序正在使用的用户代理,可以运行以下命令:

driver.execute_script("return navigator.userAgent")
 类似资料:
  • 问题内容: 我正在尝试使用无头的chrome驱动程序检索网站的html代码。但是,我收到“权限被拒绝”消息。如果我使用“常规”驱动程序,则一切正常。 有什么办法可以绕过它? 这是我的第一篇文章,因此对格式中的任何潜在错误我深表歉意 我收到的消息是: 常规司机: 理想情况下,我希望输出与后一种情况相同,而不会每隔几秒钟弹出一次新窗口。 问题答案: 添加以下代码片段即可返回该页面: 该网站显然正在检查

  • 它与49.0版本完美地工作。 Browsestack功能 “浏览器”:“Firefox”,“Browserversion”:“”,“OS”:“Windows”,“OSVersion”:“7”,“分辨率”:“1024x768”,“提线木偶”:true 更奇怪的事。它与Selenium 3.0.1 beta2和Firefox 49,51,52一起工作,至少用于is is_displained方法,但是

  • 从今天起,我们的Airflow服务无法访问BigQuery中的查询。所有作业都会失败,并显示以下消息: [2021-03-12 10:17:28079]{taskinstance.py:1150}错误-原因:403获取https://bigquery.googleapis.com/bigquery/v2/projects/waipu-app-prod/queries/e62030d7-36eb-4

  • 我正在尝试将DataStudio报表连接到表和来自BigQuery的视图。在BigQuery中,表从位于我的驱动器中的GoogleSheet接收数据,视图正在查询同一个表,但添加了一些新字段。当我尝试将图表连接到其中一个数据源时,出现以下错误: BigQuery错误:访问被拒绝:BigQuery BigQuery:获取驱动器凭据时权限被拒绝。 原因是什么?我该怎么做才能解决这个问题? 我要说的是,

  • 问题内容: 我有一个Java小程序,用于查询Oracle数据库中的数据。从IDE内部运行时,它可以正常运行。但是,当我将其作为嵌入在网页中的小程序运行时,在类加载器中出现“访问被拒绝”错误,并且我并没有最模糊的想法对我有什么要求: 问题答案: 小程序在具有严格限制的安全规则的环境中运行。您至少需要在小程序上签名。 但是,这里的问题更大,在小程序内执行JDBC是一个非常糟糕的主意。该applet的源