Python简易实现IP代理池及其维护
用处
通过自己购买或爬取到的ip,在程序中使用这些ip进行代理,达到绕过反爬虫机制的效果以及其他用途。
思路
从各大免费的ip网站抓取ip,存入数据库,使用时按序取出使用。注:存入及使用前先验证ip是否可用
我们在这里使用 西刺 这里网站里的免费ip,数据库使用mongodb
使用到的库
request
re
json
结构
IpPool
panel
__init__.py
config.py
main.py
Code
init.py
我们在这个文件中写一个爬虫的基类,方便我们拓展不同的网站
"""ipSpider Class""" import requests import pymongo import config db = pymongo.MongoClient(config.db_host)[config.db_name] class IpSpiderWeb: """网页抓取 基类""" def __init__(self, timeout, time_interval, url): self.timeout = timeout self.url = url def get_html(self, url, headers=None, data=None): """获取html页面""" print('Getting html...') try: response = requests.get( url=url, headers=headers, data=data, timeout=