python爬虫requests过程中添加headers

浏览器中打开页面,以edge为例,点击“查看源”或F12

第一步:点击上图中“网络”标签,然后刷新或载入页面

第二步:在右侧“标头”下方的“请求标头”中的所有信息都是headers内容,添加到requests请求中即可

代码示例如下:

headers = {‘Accept‘: ‘text/html, application/xhtml+xml, image/jxr, */*‘,
               ‘Accept - Encoding‘:‘gzip, deflate‘,
               ‘Accept-Language‘:‘zh-Hans-CN, zh-Hans; q=0.5‘,
               ‘Connection‘:‘Keep-Alive‘,
               ‘Host‘:‘zhannei.baidu.com‘,
               ‘User-Agent‘:‘Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36 Edge/15.15063‘}
r = requests.get(‘http://zhannei.baidu.com/cse/search‘, params=keyword, headers=headers, timeout=3)
时间: 2024-12-27 04:04:19

python爬虫requests过程中添加headers的相关文章

Python爬虫学习:四、headers和data的获取

之前在学习爬虫时,偶尔会遇到一些问题是有些网站需要登录后才能爬取内容,有的网站会识别是否是由浏览器发出的请求. 一.headers的获取 就以博客园的首页为例:http://www.cnblogs.com/ 打开网页,按下F12键,如下图所示: 点击下方标签中的Network,如下: 之后再点击下图所示位置: 找到红色下划线位置所示的标签并点击,在右边的显示内容中可以查看到所需要的headers信息. 一般只需要添加User-Agent这一信息就足够了,headers同样也是字典类型: user

解决python爬虫requests.exceptions.SSLError: HTTPSConnectionPool(host='XXX', port=443)问题

爬虫时报错如下: requests.exceptions.SSLError: HTTPSConnectionPool(host='某某某网站', port=443): Max retries exceeded with url: /login/ (Caused by SSLError(SSLError("bad handshake: Error([('SSL routines', 'tls_process_server_certificate', 'certificate verify fail

Python 爬虫—— requests BeautifulSoup

本文记录下用来爬虫主要使用的两个库.第一个是requests,用这个库能很方便的下载网页,不用标准库里面各种urllib:第二个BeautifulSoup用来解析网页,不然自己用正则的话很烦. requests使用,1直接使用库内提供的get.post等函数,在比简单的情况下使用,2利用session,session能保存cookiees信息,方便的自定义request header,可以进行登陆操作. BeautifulSoup使用,先将requests得到的html生成BeautifulSo

python爬虫---requests库的用法

requests是python实现的简单易用的HTTP库,使用起来比urllib简洁很多 因为是第三方库,所以使用前需要cmd安装 pip install requests 安装完成后import一下,正常则说明可以开始使用了. 基本用法: requests.get()用于请求目标网站,类型是一个HTTPresponse类型 import requests response = requests.get('http://www.baidu.com')print(response.status_c

python 爬虫 requests+BeautifulSoup 爬取巨潮资讯公司概况代码实例

第一次写一个算是比较完整的爬虫,自我感觉极差啊,代码low,效率差,也没有保存到本地文件或者数据库,强行使用了一波多线程导致数据顺序发生了变化... 贴在这里,引以为戒吧. # -*- coding: utf-8 -*- """ Created on Wed Jul 18 21:41:34 2018 @author: brave-man blog: http://www.cnblogs.com/zrmw/ """ import requests

python爬虫之url中的中文问题

在python的爬虫学习中,我们的url经常出现中文的问题,我们想要访问的url就需要对url进行拼接,变成浏览器可以识别的url在python中已经有了这样的模块了,这就是urlencodeurlencode需要对中文和关键字组成一对字典,然后解析成我们的url 在python2中是urllib.urlencode(keyword)在Python中是urllib.parse.urlencode(keyword) 查看一下代码:python2 import urllib import urlli

python爬虫-requests

Requests库是目前常用且效率较高的爬取网页的库 1.一个简单的例子 import requests #引入requests库r = requests.get("http://www.baidu.com") #调用get方法获取界面print(r.status_code) #输出状态码print(r.text) #输出页面信息 通过以下代码,便可获取一个response对象 2.通用代码框架 import requests def getHtmlText(url): try: r

Python正则表达式使用过程中的小细节

今天用Python写了个简单的爬虫程序,抓取虎扑篮球(nba.hupu.com)的首页内容,代码如下: 1 #coding:gb2312 2 import urllib2, re 3 webpage = urllib2.urlopen('http://nba.hupu.com') 4 text = webpage.read() 5 m = re.search('<a href=(.*) (.*)?>彩票</a>', text) 6 print m.group(1) 按照预想应该输出

Python爬虫requests判断请求超时并重新发送请求

在爬虫的执行当中,总会遇到请求连接超时的情况,下面的代码块是在请求超时的情况下,捕捉超时错误并连续发送多次请求,只到请求连接成功. NETWORK_STATUS = True # 判断状态变量 try:    response = requests.post(url, headers=self.headers, data=data, timeout=5)    if response.status_code == 200:        return response except reques