python爬虫系列(三):第三方库requests 的使用
来源:互联网 发布:date函数的使用方法php 编辑:程序博客网 时间:2024/06/10 00:03
(一)requests的安装
1 如果你的机器上安装了anaconda了的话,可以选择conda install requests 安装。假如你对anaconda 不熟悉的话可以前往 http://blog.csdn.net/little_monkey1223/article/details/77170727
了解,这篇文章关于如何使用第三方库管理工具anaconda描述的很详细。
2 利用pip 安装。命令:pip install requests或者easy_install requests
(二)基本的用法
(1)基本的get请求和params 参数
import requests
kw = {“kw”:“科比”}
headers = {‘User-Agent’:”Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) “}
发送请求并带上get请求的内容。
response = requests.get(“你想访问的网址”,params=kw,headers = headers)
查看响应的内容的时候需要添加text或者是content
print(response.text)
返回的是字节流数据
print(response.content)
查看响应头部的字符编码
print(response.encoding)
(2)基本的post请求(data参数)
import requests
formdata = {
“doctype”:”json”,
“xmlVersion”:”1.8”,
“keyfrom”:”fanyi.web”,
“ue”:”UTF-8”,
“action”:”FY_BY_ENTER”,
“typoResult”:”true”,
}
response = requests.post(“你想访问的网址”,data = formdata)
print(response.text)
如果是文件可以直接显示
print(response.json())
代理参数(proxies)
爬虫难免会用到代理。requests请求方法提供了proxies参数来配置
import requests
要写成字典的类型
proxies = {
“http”:”http://12.23.4.5:80“,
“https”:”http://12.24.45.3.80”
}
response = requests.get(“你想访问的网址”,proxies=proxies)
**如果你不想让人轻易的看到你的代理IP,可以把ip设置成本地环境变量
export HTTP_PROXY = “http://12.23.4.5:80“,
export HTTPS_PROXY = “http://12.24.45.3.80“.
然后通过os.getenv(HTTP_PROXY)可以获得
私密代理的设置(格式是固定的)
如果代理需要密码的IP可以固定写成这个格式
proxy = {
“http”:”用户名”:”密码”@IP:PORT
}
response = requests.get(“想访问的网站”,proxies = proxy)
客户端的验证
auth = (“账号”,“密码”)
response = requests.get(“想访问的网站”,auth = auth)
Cookies
如果响应中包含了cookie ,requests自身有cookies参数
response = requests.get(“网址”)
返回cookeiJar对象,注意,并没有()
cookiejar = response.cookies
将cookiejar转为字典类型
cookiedict = requests.utils.dict_from_cookiejar(cookiejar)
session
在requests中,session对象中非常常用的对象,非常的简单方便。这个会话能保持某些参数,比如在同一个实例发出的所有的请求之间保持的cookie
处理ssl证书的验证
只需要在请求的时候添加参数verify = Flase.默认的为True。这样就可以轻松地跳过ssl证书的验证。是不是非常的简单呢?
(三)代码体现
import requests
创建session对象,可以保存Cookie值
ssion = requests.session()处理 headers
headers = {“User-Agent”: “Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.99 Safari/537.36”}需要登录的用户名和密码
data = {“email”:”用户名”, “password”:”密码”}- 发送附带用户名和密码的请求,并获取登录后的Cookie值,保存在ssion里
ssion.post(“http://www.renren.com/PLogin.do“, data = data)
- 发送附带用户名和密码的请求,并获取登录后的Cookie值,保存在ssion里
ssion包含用户登录后的Cookie值,可以直接访问那些登录后才可以访问的页面
response = ssion.get(“http://www.renren.com/410043129/profile“)打印响应内容
print response.text
requests 非常的实用,简答方便。在爬虫工程师的眼中要比urllib亲的几万倍。
- python爬虫系列(三):第三方库requests 的使用
- Python 第三方库(requests)的使用(转)
- Python网络爬虫——Requests第三方库
- Python第三方库Requests
- Python使用Requests第三方库自动登陆知乎
- Python 最好用的第三方 http 库-Requests介绍
- Python 第三方 http 库-Requests 学习
- Python 第三方 http 库-Requests 学习
- Python 第三方 http 库-Requests 学习
- Python-第三方库requests详解
- Python-第三方库requests详解
- Python-第三方库requests详解
- Python-第三方库requests详解
- Python-第三方库requests详解
- Python-第三方库requests详解
- Python-第三方库requests详解
- Python-第三方库requests详解
- Python API第三方库requests详解
- 35. 数据结构笔记之三十五遍历二叉树
- MySQL:实现cumsum(累加)的功能
- 【noip2014】解方程(模意义下的哈希)
- 几种常见的排序算法分析学习
- hdu 4300 很好的hash字符串题
- python爬虫系列(三):第三方库requests 的使用
- PAT 甲级 1018. Public Bike Management (30)
- mysql根据.frm和.ibd文件恢复表结构和数据
- 《机器学习》学习笔记chapter2 模型选择(占坑)
- 全排列的递归实现
- 关于真机调试DDMS中的data文件夹打不开的解决方法
- 老司机带你玩转git (四) git的协同合作
- EasyUI框架
- 数据库选型漫谈