2.打开QPYPI,然后点击QPYPI客户端,接着输入pip install requests然后点击含薯手机输入法的下一步即可安装模块,千万不要复制,要手动输入才可以
3.安装是高宏否成功运行戚老册一下import requests没有报错就可以了
暑假已经开始一周多,这两天开始着手学习爬虫携拍。在https://germey.gitbooks.io/python3webspider/content/(以下简称书)上按部就班地学习与 *** 作老正,但是发现一些问题。
书上在讲解安装Requests库时,辩含羡直接在cmd中使用pip3 install requests进行安装。但我在我电脑上实际 *** 作中却一直出现如下错误:
通过询问我得知,这个应该是由防火墙造成的结果。通过在cmd中pip install requests -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com可以成功安装Requests库。同样,在后边安装Selenium、ChromeDriver、LXML、BeautifulSoup等库时也遇到类似的问题。并且都可以通过将pip install requests -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com中的requests改成其他库名的全小写后,在cmd中运行得以解决。
requests 继承了裂键衡urllib2的所有特性,比urllib简洁高效
requests所有功能都能通过"requests/api.py"中的方法访问
1、安装:
pip install requests
2、get请求:
封装肆做链接中的参数,请求时用params参数进行传递
url = " http://www.baidu.com "
resp = requests.get(url,params=,headers=)
3、post请求:
发送的数据必须放在字典中,通过data参数进行传递
url = " http://www.baidu.com "
resp = requests.post(url,data=,headers=)
4、查看响应内容:
print (resp.text ) # resp.text 返回的是Unicode格式的数据
print(resp.json()) # res.json() 返回的是json格式的数据
print(resp.content) # resp.content返回的字节类型数据
print (resp.url) # 查看完整url地址
print (resp.encoding) # 查看响应头部字符编码
print(resp.status_code) # 查看响应码
print(resp.cookies) # 查看返回的cookies
print(resp.r.elapsed) #响应速度,从发送请求到响应到达所需要的时间
5、Cookies
import requests
url = " http://www.baidu.com "
resp = requests.get(url)
cookiejar = resp.cookies # 返回cookies对象
cookiedic = requests.utils.dict_from_cookiejar(cookiejar) # 将cookies转为字典
6、Sission
说明
1、发送请求前先创建一个session会话,将请求到的cookies存入session中
2、程序的请求要一直使用session.get/post,以保证cookies在程序中的传递
3、程序的请求如果使用requests.get/post需要在参数中增加headers{"cookie:":"****"},否则请求会报错,因为requests.get/post每次执行都会重新开启一个新的请求,丢失已获取的cookies
例子:登录17小说网拿到书架数据
import requests
session = requests.session() # 创亮隐建会话(session),将cookie存入session中
data = {
"loginName": "1 7",
"password": "1 5"
}
url = " https://passport.17k.com/ck/user/login "
resp1 = session.post(url,data=data) # 登录,获取cookies
resp2 = session.get(" https://user.17k.com/ck/author/shelf?page=1&appKey=2406394919 ")
print(resp2.json())
7、防盗链处理
防盗链,本质上是溯源,即本次请求的上一次请求,请求时将referer地址加上即可
header = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0Win64x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.106 Safari/537.36",
"Referer":" https://www.pearvideo.com/video_1734919 " # 防盗链:溯源,确认当前请求的上一级
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)