我想从该网站获取内容。
如果使用Firefox或Chrome这样的浏览器,则可以获取所需的真实网站页面,但是如果使用Python
request软件包(或wget
命令)进行获取,则它将返回完全不同的HTML页面。
我认为该网站的开发人员为此做了一些阻碍。
如何使用python请求或命令wget伪造浏览器访问?
提供User-Agent
标题:
import requests
url = 'http://www.ichangtou.com/#company:data_000008.html'
headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36'}
response = requests.get(url, headers=headers)
print(response.content)
仅供参考,以下是针对不同浏览器的User-Agent字符串列表:
附带说明一下,有一个非常有用的第三方程序包,称为fake-useragent,它在用户代理上提供了一个不错的抽象层:
假用户代理
最新的简单useragent伪造者与真实世界数据库
演示:
>>> from fake_useragent import UserAgent
>>> ua = UserAgent()
>>> ua.chrome
u'Mozilla/5.0 (Windows NT 6.2; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1667.0 Safari/537.36'
>>> ua.random
u'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.67 Safari/537.36'
问题内容: 我想从下面的网站获取内容。如果我使用Firefox或Chrome之类的浏览器,则可以获取所需的真实网站页面,但是如果我使用Python请求包(或命令)来获取它,它将返回完全不同的HTML页面。我以为网站的开发人员为此做了一些阻碍,所以问题是: 如何使用python请求或命令wget伪造浏览器访问? 问题答案: 提供标题: 假用户代理 最新的简单useragent伪造者与真实世界数据库
问题内容: 我最近在Python中开发了一个围绕某些ORM文档对象命名的类,以透明地向其中添加一些功能,而不用任何方式更改其接口。 我对此只有一个问题。假设我包裹了一些物体。呼叫将返回,因为确实是的一个实例。 有没有办法伪造Python中的对象类型以具有相同的调用返回? 问题答案: 测试对象的 类型 通常是python中的反模式。在某些情况下,测试对象的 “鸭子类型” 是有意义的,例如: 但是,即
本文向大家介绍python使用mitmproxy抓取浏览器请求的方法,包括了python使用mitmproxy抓取浏览器请求的方法的使用技巧和注意事项,需要的朋友参考一下 最近要写一款基于被动式的漏洞扫描器,因为被动式是将我们在浏览器浏览的时候所发出的请求进行捕获,然后交给扫描器进行处理,本来打算自己写这个代理的,但是因为考虑到需要抓取https,所以最后找到Mitmproxy这个程序。 安装方法
本文向大家介绍使用浏览器访问python写的服务器程序,包括了使用浏览器访问python写的服务器程序的使用技巧和注意事项,需要的朋友参考一下 代码如下所示: 注意: 1.开始的时候file_n没有先定义,结果就报错:local variable ‘file_n' referenced before assignment 2.正则表达式一定要先验证筛取的内容是否正确。 3.要获取程序同级文件夹中文
在我的php文件中,我有以下内容来创建一个带有FPDF库的PDF: 但是请求是响应这个,而不是打开一个保存对话框来保存我的PDF。 %PDF-1.3 3 0 obj<>endobj 4 0 obj<>stream x 3 R@2π35 W(çR qπw 3 t04多30 pispéz*[(hx·ääää+çó)·(j*dé7 w endstream endobj 1 0 obj /xobject<
本文向大家介绍Ajax请求如何解决浏览器缓存问题?相关面试题,主要包含被问及Ajax请求如何解决浏览器缓存问题?时的应答技巧和注意事项,需要的朋友参考一下 参考回答: 在ajax发送请求前加上 anyAjaxObj.setRequestHeader("If-Modified-Since","0")。 在ajax发送请求前加上 anyAjaxObj.setRequestHeader("Cache-C