-
282024年4月
-
302024年3月
-
292024年2月
-
312024年1月
-
312023年12月
-
302023年11月
-
312023年10月
-
302023年9月
-
312023年8月
-
352023年7月
-
312023年6月
-
312023年5月
-
302023年4月
-
312023年3月
-
282023年2月
-
312023年1月
-
312022年12月
-
302022年11月
-
312022年10月
-
302022年9月
-
312022年8月
-
322022年7月
-
292022年6月
-
322022年5月
-
302022年4月
-
332022年3月
-
312022年2月
-
372022年1月
-
382021年12月
-
382021年11月
-
402021年10月
-
432021年9月
-
372021年8月
-
442021年7月
-
442021年6月
-
432021年5月
-
342021年4月
-
312021年3月
-
292021年2月
-
352021年1月
-
422020年12月
-
402020年11月
-
482020年10月
-
522020年9月
-
852020年8月
-
752020年7月
-
802020年6月
-
782020年5月
-
772020年4月
-
432020年3月
-
362020年2月
-
452020年1月
-
562019年12月
-
712019年11月
-
612019年10月
-
562019年9月
-
532019年8月
-
362019年7月
-
362019年6月
-
382019年5月
-
402019年4月
-
352019年3月
-
342019年2月
-
442019年1月
-
392018年12月
-
402018年11月
-
392018年10月
-
392018年9月
-
452018年8月
-
452018年7月
-
392018年6月
-
512018年5月
-
492018年4月
-
342018年3月
-
282018年2月
-
482018年1月
-
732017年12月
-
7292017年11月
-
7442017年10月
-
2892017年9月
-
12017年8月
我们知道,一些网站会有相应的反爬虫措施,比如检测某些IP的访问次数或者访问频率,有些反人类的访问速度就会受到限制甚至封禁,所以在进行爬虫工作时也要讲究策略,比如使用代理IP、调整访问频率、设置UA等等,让我们来看看如何简单的使用代理IP。
#!/usr/bin/env python
# -*- coding:utf-8 -*-
import requests
import random
if __name__ == "__main__":
#不同浏览器的UA
header_list = [
# 遨游
{"user-agent": "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Maxthon 2.0)"},
# 火狐
{"user-agent": "Mozilla/5.0 (Windows NT 6.1; rv:2.0.1) Gecko/20100101 Firefox/4.0.1"},
# 谷歌
{
"user-agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_0) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.56 Safari/535.11"}
]
#不同的代理IP(该代理ip可能已经失效,请自行去开心代理网站上购买开通)
proxy_list = [
{"http": "112.115.57.20:33128"},
{‘http‘: ‘121.41.171.223:32128‘}
]
#随机获取UA和代理IP
header = random.choice(header_list)
proxy = random.choice(proxy_list)
url = ‘http://www.baidu.com/s?ie=UTF-8&wd=ip‘
#参数3:设置代理
response = requests.get(url=url,headers=header,proxies=proxy)
response.encoding = ‘utf-8‘
with open(‘daili.html‘, ‘wb‘) as fp:
fp.write(response.content)
#切换成原来的IP
requests.get(url, proxies={"http": ""})