懒猫随缘记:今天写了个ip地址爬取的小爬虫,菜。

时间:2020年1月26日16:09
地点:宅着
新型冠状病毒的事件在持续发酵,我这的病例不多但也没有多少人上街了,人人自危。
小爬虫爬取的西刺代理网站的高匿代理
文件的代码如下:

import time
import random
from bs4 import BeautifulSoup
import csv
import requests
import pandas as pd
from ip地址爬取策略_未完成.headers import get_user_agent

class ipspider:

    def get_ip():
        header = {"User-Agent":get_user_agent()}
        html = requests.get('https://www.xicidaili.com/nn/1',headers=header,proxies = {'http':'http://125.123.141.160:9999'})
        soup = BeautifulSoup(html.text,"html.parser")
        time.sleep(random.randint(50, 120))
        ip_table = soup.find_all("tr")
        ip_list = []
        for i in range(1, len(ip_table)):
            ip = ip_table[i].find_all("td")
            First = ip[1].text + ':'
            Second = First + ip[2].text
            ip_list.append(Second)
        return ip_list

    def write_ip(ip_list):
        fo = open("ippool.csv", 'w+', newline='')
        filenames = ['Ip']
        write_csv = csv.DictWriter(fo,fieldnames=filenames)
        for x in range (len(ip_list)):
            write_csv.writerow({'Ip':str(ip_list[x])})
        fo.close()

    def read_ip():
        ip = pd.read_csv("ippool.csv",header=None)
        x = random.randint(0,len(ip))
        result = ip.iloc[x].values[0]
        return result

代码分为三个方法:

							爬取IP地址
	    					将爬取的IP地址写成CSV
	    					读取已写的CSV文件

其中的get_user_agent()是一个User-Agent的设置
代码只爬取了第一页,一般来说100个IP可以满足需求

emmm,十分简陋…我好菜…:)

愿你我安好,世界和平。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值