1 如果你的机器上安装了anaconda了的话,可以选择conda install requests 安装。假如你对anaconda 不熟悉的话可以前往 http://blog.csdn.net/little_monkey1223/article/details/77170727
了解,这篇文章关于如何使用第三方库管理工具anaconda描述的很详细。
2 利用pip 安装。命令:pip install requests或者easy_install requests
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)
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())
爬虫难免会用到代理。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)
如果响应中包含了cookie ,requests自身有cookies参数
response = requests.get(“网址”)
返回cookeiJar对象,注意,并没有()
cookiejar = response.cookies
将cookiejar转为字典类型
cookiedict = requests.utils.dict_from_cookiejar(cookiejar)
在requests中,session对象中非常常用的对象,非常的简单方便。这个会话能保持某些参数,比如在同一个实例发出的所有的请求之间保持的cookie
只需要在请求的时候添加参数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”:”密码”}
ssion包含用户登录后的Cookie值,可以直接访问那些登录后才可以访问的页面
response = ssion.get(“http://www.renren.com/410043129/profile“)
打印响应内容
print response.text
requests 非常的实用,简答方便。在爬虫工程师的眼中要比urllib亲的几万倍。