python 爬虫 获取免费的代理ip地址

该代码段演示了如何使用Python的requests和lxml库从网页抓取免费代理IP,并将其存储到Excel文件中。首先定义了一个get_ip函数,通过发送HTTP请求获取HTML页面,然后使用XPath解析IP和端口信息,将它们组合并添加到列表中。最后,将收集到的IP列表保存到名为'ip.xlsx'的Excel文件中。
摘要由CSDN通过智能技术生成
import requests
from lxml import etree
import pandas as pd
ip_list=[]#创建保存IP地址的列表
def get_ip(url,headers):
    response = requests.get(url,headers=headers)
    response.encoding='utf-8'#设置编码方式
    if response.status_code==200:#判断请求是否成功
        html = etree.HTML(response.text)#解析HTML
        li_all=html.xpath('//li[@class="f-list col-lg-12 col-md-12 col-sm-12 col-xs-12"]')
        for i in li_all:#遍历每行内容
            ip = i.xpath('span[@class="f-address"]/text()')[0]#逐个获取ip
            port = i.xpath('span[@class="f-port"]/text()')[0]#逐个获取端口
            ip_list.append(ip+':'+port)#将ip与端口组合并添加到列表中
            print('代理ip为:',ip,'对应端口:',port)
#头部信息
headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36'
}

if __name__=='__main__':
    ip_table = pd.DataFrame(columns=['ip'])#创建临时表格
    for i in range(1,5):
        #获取免费代理ip的请求地址
        url = 'https://www.dieniao.com/FreeProxy/{page}.html'.format(page=i)
        get_ip(url,headers)
    ip_table['ip']=ip_list#将提取的ip保存到EXCEL文件中的ip列
    ip_table.to_excel('ip.xlsx',sheet_name='data')#生成xlsx文件
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

戴上微笑

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值