定制Requests 2019-04-06安全
一. 传递URL参数服务器
本身构建的url中, 数据通常会跟在一个问号后面, 并以键-值的形式放在url中.网站
在Requests中, 咱们能够把这些参数保存在字典中, 用params构建至url中.编码
I.E: url
key_dict = {'key1': 'value1', 'key2', 'value2'}spa
r = requests.get('http://......', params=key_dict)资源
print(r.url) # 返回编码后的urlget
上述代码实现了 将key1=value1, key2=value2传递到网站的url请求中requests
二. 定制请求头表单
第一步, 查看网页内置的Header
在网页上右击, 打开"元素审查"或"检查"选项, 在打开的页面中选择Network选项, 在左侧资源中找到须要请求的网页, 随后打开的窗口中的Header选项中查看
Requests Header的详细信息.
第二步, 根据查找到的信息编写 本身的请求头.其中需包括[user-agent] [Host]参数.
三. 发送Post请求
发送一些编码为表单形式的数据( 由于若是用Get请求, 数据就会显示在url中, 这是不安全的), 只须要传入一个字典类型给Requests的[data]参数
四.设置超时
防止遇到服务器长时间不响应 致使爬虫一直处在等待状态, 用Requests的[timeout]参数设置超时,
I.E: r = requests.get(link, timeout= 0.001) # 0.001秒内无响应则抛出异常(通常设置为20秒)