# 透明 ip 对方服务器知道你使用的是 代理ip 也知道你的真实 ip
# 高匿名 ip 不知道使用的代理 ip 也不知道自己的真实 ip
# 匿名 ip 知道使用代理 ip 但不知道真实 ip
# 小舒代理 http://www.xsdaili.com/dayProxy/9.html
# 西刺代理 https://www.xicidaili.com/nn/
# 关于验证的话,后面学习到再来补充吧
import requests
from lxml import etree
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36'
}
# 下载网页
def get_html(link):
print("正在爬起{}页数据".format(page))
respon = requests.get(link,headers=headers)
if respon.status_code == 200 :
return respon.content.decode('utf-8')
else:
return "请求失败"
# 解析网页 提取数据
def parse_html(html):
html_etree = etree.HTML(html)
ips = html_etree.xpath('//table[@id="ip_list"]//tr//td[2]/text()')
duankou = html_etree.xpath('//table[@id="ip_list"]//tr//td[3]/text()')
tyle = html_etree.xpath('//table[@id="ip_list"]//tr//td[6]/text()')
datas = list(zip(ips,duankou,tyle)) # 压缩数据
print("当前页面获取的数据数量:",len(datas))
for data in datas:
print(data)
def main(page):
link = 'https://www.xicidaili.com/nn/{}'.format(page)
html = get_html(link)
parse_html(html)
if __name__ == '__main__':
for page in range(1,3):
main(page)
运行代码结果部分截图:
——————————END