爬虫初探之requests

author author     2022-08-13     458

关键词:

关于请求网络,requests这个库是爬虫经常用到的一个第三方库。

import requests

url = http://www.baidu.com
#这里用get方法用来请求网页,其他还有post等方法来请求网页
data = requests.get(url)

print(data)
#<Response [200]>

print(data.text)#这里的 .text 就等同于上一篇中的 read()
#此时同样打印出网页源码

其余方法后期学习,方法列表如下:

#HTTP请求类型
#get类型
r = requests.get(https://github.com/timeline.json)
#post类型
r = requests.post("http://m.ctrip.com/post")
#put类型
r = requests.put("http://m.ctrip.com/put")
#delete类型
r = requests.delete("http://m.ctrip.com/delete")
#head类型
r = requests.head("http://m.ctrip.com/head")
#options类型
r = requests.options("http://m.ctrip.com/get")

#获取响应内容
print r.content #以字节的方式去显示,中文显示为字符
print r.text #以文本的方式去显示

#URL传递参数
payload = {keyword: 日本, salecityid: 2}
r = requests.get("http://m.ctrip.com/webapp/tourvisa/visa_list", params=payload) 
print r.url #示例为http://m.ctrip.com/webapp/tourvisa/visa_list?salecityid=2&keyword=日本

#获取/修改网页编码
r = requests.get(https://github.com/timeline.json)
print r.encoding
r.encoding = utf-8

#json处理
r = requests.get(https://github.com/timeline.json)
print r.json() #需要先import json    

#定制请求头
url = http://m.ctrip.com
headers = {User-Agent : Mozilla/5.0 (Linux; Android 4.2.1; en-us; Nexus 4 Build/JOP40D) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Mobile Safari/535.19}
r = requests.post(url, headers=headers)
print r.request.headers

#复杂post请求
url = http://m.ctrip.com
payload = {some: data}
r = requests.post(url, data=json.dumps(payload)) #如果传递的payload是string而不是dict,需要先调用dumps方法格式化一下

#post多部分编码文件
url = http://m.ctrip.com
files = {file: open(report.xls, rb)}
r = requests.post(url, files=files)

#响应状态码
r = requests.get(http://m.ctrip.com)
print r.status_code
    
#响应头
r = requests.get(http://m.ctrip.com)
print r.headers
print r.headers[Content-Type]
print r.headers.get(content-type) #访问响应头部分内容的两种方式
    
#Cookies
url = http://example.com/some/cookie/setting/url
r = requests.get(url)
r.cookies[example_cookie_name]    #读取cookies
    
url = http://m.ctrip.com/cookies
cookies = dict(cookies_are=working)
r = requests.get(url, cookies=cookies) #发送cookies

#设置超时时间
r = requests.get(http://m.ctrip.com, timeout=0.001)

#设置访问代理
proxies = {
           "http": "http://10.10.10.10:8888",
           "https": "http://10.10.10.100:4444",
          }
r = requests.get(http://m.ctrip.com, proxies=proxies)

 

爬虫初探正则表达式

...提取需要的数据。简单写一下正则表达的用法importreimportrequests#获取网页数据url="http://www.ivsky.com/tupian/xiaohuangren_t21343"data=requests.get(url).text#正则表达式三部曲,正则匹配且转换patter对象pa=re.c 查看详情

爬虫之request模块

爬虫之request模块request简介#介绍:使用requests可以模拟浏览器的请求,比起之前用到的urllib,requests模块的api更加便捷(本质就是封装了urllib3)#注意:requests库发送请求将网页内容下载下来以后,并不会执行js代码,这需要我们... 查看详情

python网络爬虫之requests模块

什么是requests模块:  requests模块是python中原生的基于网路请求的模块,其主要作用是用来模拟浏览器发送请求,功能强大,用法简洁高效,在爬虫的领域占半壁江山如何使用requests模块:  安装:pipinstallrequests  使用流程:    1... 查看详情

爬虫之requests介绍

一介绍1介绍:使用requests可以模拟浏览器的请求,比起之前用到的urllib,requests模块的api更加便捷(本质就是urllib3)2注意:requests库发送请求将网页代码下载下来之后,并不会执行js代码,这需要我们分析目标站点,然后发起新... 查看详情

爬虫之requests(代码片段)

一、request模块介绍1.什么是request模块-python中原生的基于网络请求的模块,模拟浏览器发起请求。2.为什么使用request模块-urllib需要手动处理url编码,quote()。-urllib需要手动处理post请求参数。-cookie的代理操作比较繁琐1.cookie-创建... 查看详情

requests库入门之小爬虫

通用代码框架:try:r=requests.get(url,timeout=30)r.raise_for_status()r.encoding=r.apparent_encodingreturnr.textexcept:return"产生异常" 爬取某网页100次花费的时间importrequestsimporttimedefgetHTMLText(url):try:r=requests 查看详情

爬虫之requests库

Whyrequestspython的标准库urllib2提供了大部分需要的HTTP功能,但是API太逆天了,一个简单的功能就需要一大堆代码。Requests使用的是urllib3,因此继承了它的所有特性。Requests支持HTTP连接保持和连接池,支持使用cookie保持会话,支持... 查看详情

爬虫之scarpy.request(代码片段)

一.Request1.requestScarpy中的HTTP请求对象1.1.Requse的构造#我们ctrl+左键可以看到Scarpy.Request的代码classRequest(object_ref):def__init__(self,url,callback=None,method='GET',headers=None,body=None,cookies=None,meta= 查看详情

爬虫之requests模块(代码片段)

.../www.cnblogs.com/peng104/p/9846613.html爬虫的基本流程简介简介:Requests是用python语言基于urllib编写的,采用的是Apache2Licensed开源协议的HTTP库,Requests它会比urllib更加方便,可以节约我们大量的工作。一句话,requests是python实现的最简单... 查看详情

pytho爬虫之requests的使用(代码片段)

一、requests库的安装(1)、pip3installrequests(2)、在pycharm中进行安装          二、基于HTTP协议的requests的请求机制 1、http协议:(以请求百度为例)  (1)请求url:      https://www.baid... 查看详情

爬虫之requests(代码片段)

requestsPython标准库中提供了:urllib、urllib2、httplib等模块以供Http请求,但是,它的API太渣了。它是为另一个时代、另一个互联网所创建的。它需要巨量的工作,甚至包括各种方法覆盖,来完成最简单的任务。Requests是使用Apache2Lice... 查看详情

爬虫基础之requests(代码片段)

requestsPython标准库中提供了:urllib、urllib2、httplib等模块以供Http请求,但是,它的API太渣了。它是为另一个时代、另一个互联网所创建的。它需要巨量的工作,甚至包括各种方法覆盖,来完成最简单的任务。Requests是使用Apache2Lice... 查看详情

爬虫之requests模块(代码片段)

概述近年来,随着网络应用的逐渐扩展和深入,如何高效的获取网上数据成为了无数公司和个人的追求,在大数据时代,谁掌握了更多的数据,谁就可以获得更高的利益,而网络爬虫是其中最为常用的一种从网上爬取数据的手段... 查看详情

网络爬虫之requests模块(代码片段)

一.requests模块的学习什么是requests模块? requests模块是python中原生的基于网络请求的模块,其主要作用是用来模拟浏览器发起请求。功能强大,用法简洁高效。在爬虫领域中占据着半壁江山的地位。为什么要使用requests模块因... 查看详情

python爬虫之scrapy框架系列(16)——深入剖析request和response类(代码片段)

目录:Request和Response类:1.深入剖析Request类:利用request.meta传递参数拓展一:FormRequest类2.深入剖析Response类:Request和Response类:1.深入剖析Request类:importscrapyfromscrapy.httpimportRequest#Scrapy.http.Request类是scrapy框架中request的基类。#####... 查看详情

python爬虫之scrapy框架系列(16)——深入剖析request和response类(代码片段)

目录:Request和Response类:1.深入剖析Request类:利用request.meta传递参数拓展一:FormRequest类2.深入剖析Response类:Request和Response类:1.深入剖析Request类:importscrapyfromscrapy.httpimportRequest#Scrapy.http.Request类是scrapy框架中request的基类。#####... 查看详情

python爬虫实例教程之豆瓣电影排行榜--python爬虫requests库

我们通过requests库进行了简单的网页采集和百度翻译的操作,这一节课我们继续进行案例的讲解–python爬虫实例教程之豆瓣电影排行榜,这次的案例与上节课案例相似,同样会涉及到JSON模块,异步加载以及局部加... 查看详情

python爬虫之破解百度翻译--requests案例详解

这节课我们接着上节课的内容,继续学习requests之破解百度翻译案例。我们上节课已经知道了解题思路,这节课我们来看看代码怎么写。1.首先导入requests模块********2.获取请求类型以及网址信息****通过页面信息(如下... 查看详情