gpt4 book ai didi

javascript - 更改spynner用户代理不起作用

转载 作者:行者123 更新时间:2023-11-28 06:12:57 26 4
gpt4 key购买 nike

我们遇到以下情况:我们需要访问一个只需要使用MSIE访问的站点。

因此,我们必须更改spynner 用户代理,因为默认情况下这不是MSIE。

这是我的代码:

import re
import spynner
from pyquery import PyQuery
import time
import sys
tipo_navegador = "Mozilla/5.0 (Windows; U; MSIE 9.0; WIndows NT 9.0; en-US))"

br = spynner.Browser(
ignore_ssl_errors=True,
user_agent=tipo_navegador,
debug_level=spynner.WARNING,
debug_stream=sys.stderr)
br.create_webview()
br.show()
br.set_html_parser(PyQuery)
br.load("https://myurl.com/index.php")
br.browse()
br.close()

调试 Spynner 我们看到修改后的用户代理:

Page load started
Request: GET https://myurl.com/index.php
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
User-Agent: Mozilla/5.0 (Windows; U; MSIE 9.0; WIndows NT 9.0; en-US))

我们从网站收到默认的用户代理:

Mozilla/5.0 (Windows NT 6.0; rv:43.0) Gecko/20100101 Firefox/43.0

最佳答案

要覆盖 navigator.userAgent 值,您可以使用 this gist 。运行以下脚本进行测试:

browser = spynner.Browser(user_agent='myFakeUserAgent',
headers=headers_list)

browser.runjs(change_user_agent_script + 'document.write((navigator.userAgent))')
browser.browse()

其中 change_user_agent_script 是包含此要点的字符串。

关于javascript - 更改spynner用户代理不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36221519/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com