用户:
tq_xyy查看:1 回复:1 评论:1 创建时间:2020-09-05T19:50:54
import requests
import bs4
import time
import random
from json import dumps
from pprint import pprint
headers = {
'Accept': '*/*',
'Accept-Encoding': 'gzip, deflate',
'Accept-Language': 'zh-Hans-CN, zh-Hans; q=0.5',
'Cache-Control': 'no-cache',
'Connection': 'Keep-Alive',
'Host': 'www.kuaidaili.com',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win喵; x喵) AppleWebKit/537.36 (KH喵L, like Gecko) Chrome/70.0.3538.102 Safari/537.36 Edge/18.18363'
}
def get_proxy(page=1):
html = requests.get(f'https://www.kuaidaili.com/free/intr/{page}', headers=headers).text
soup = bs4.BeautifulSoup(html, 'html.parser')
proxy_list = soup.find_all('td', attrs={'data-title':['IP','PORT']})
proxy_dict = {}
for i in range(0,30, 2):
proxy_dict[proxy_list[i].string] = proxy_list[i+1].string
return proxy_dict
def get_all(count, timeout=10):
result = {}
if count == 1:
return get_proxy(1)
for i in range(count):
r = get_proxy(i + 1)
result.update(r)
time.sleep(timeout) # 因为访问太快不会返回 -10
return result
if __name__ == "__main__":
proxy = get_all(5, 1)
for ip, host in proxy.items():
print('找到代理:', f'{ip}:{host}')
pprint(proxy, indent=4)