importrequestsfrom lxml importetreeimporttimeimportrandomimportcsvdeftest_ip(ip_address):'''测试ip是否可用

:param ip_address: 代理ip'''url= 'http://icanhazip.com/'headers={#headers 头部文件

'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:74.0) Gecko/20100101 Firefox/74.0',

}

ip_pool=[]for ip_test inip_address:#print(ip_test)

try:

response= requests.get(url=url,headers=headers,proxies=ip_test,timeout=5)if response.status_code == '200':

ip_pool.append(ip_test)

time.sleep(random.randint(2,8))exceptException as e:pass

print(ip_pool)

files_save(ip_pool)deffiles_save(ip_list):'''将可用代理ip保存

:param ip_list:代理ip

:return:'''with open('./代理ip.csv','a+',encoding='utf-8')as f:

write=csv.writer(f)

write.writerow(ip_list)pass

defget_page_data(nums):'''获取西刺代理的页面信息

:return:'''ip_list=[]

headers={'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:74.0) Gecko/20100101 Firefox/74.0',

}for i in range(1,nums+1):

url= "https://www.xicidaili.com/nn/{}".format(i)

response= requests.request('get',url=url,headers=headers)

page_data=etree.HTML(response.text)#获取https信息

#https_infos = page_data.xpath(".//tr[@class='odd']")

#获取http信息

#http_infos = page_data.xpath(".//tr[@class='']")

page_infos= page_data.xpath(".//tr[@class='odd']|.//tr[@class='']")for info inpage_infos:

ip_dict={}

ip_address= info.xpath(".//td[2]/text()")[0]

ip_port= info.xpath(".//td[3]/text()")[0]

ip_type= info.xpath(".//td[6]/text()")[0].lower()

ip_dict[ip_type]= ip_type+'://'+ip_address+':'+ip_port

ip_list.append(ip_dict)#print(ip_list)

test_ip(ip_list)pass

pass

if __name__ == '__main__':'''爬取代理ip时应注意

需要测试此ip是否可用

爬取速度

分析:

url信息

页面 url

1 https://www.xicidaili.com/nn/

2 https://www.xicidaili.com/nn/2

3 https://www.xicidaili.com/nn/3'''

#nums = int(input("请输入爬取页数>>"))

nums = 2get_page_data(nums)

西刺代理python_python爬虫西刺代理ip爬取相关推荐

  1. 代理IP爬取和验证(快代理西刺代理)

    前言 仅仅伪装网页agent是不够的,你还需要一点新东西 今天主要讲解两个比较知名的国内免费IP代理网站:西刺代理&快代理,我们主要的目标是爬取其免费的高匿代理,这些IP有两大特点:免费,不稳 ...

  2. 爬虫篇——代理IP爬取备用及存储

    爬虫篇--代理IP爬取备用及存储 代码 代码 本文通过抓取免费的高匿IP代理,将其写入列表并保存为json格式文件,且将代码进行了封装,方便以后抓取数据时动态的更新handle的IP地址,从一方面避免 ...

  3. python爬虫代理ip_Python爬虫如何获取代理ip及ip验证?

    如何获取大量的公开数据信息,这是我们互联网在竞争激烈的环境中的生存之道,不管在什么环境下都要学习和了解用户市场,客户需求,竞争对手,如何能获取到大量的数据信息,那么就需要用到网络爬虫. 在我们从事py ...

  4. 爬虫之使用代理ip爬取

    爬虫之代理ip的应用 ​ 在爬虫的过程中,我们经常会遇见很多网站采取了防爬虫技术,或者说因为自己采集网站信息的强度和采集速度太大,给对方服务器带去了太多的压力. ​ 如果一直用同一个代理ip爬取这个网 ...

  5. 数据抓取 -- 使用代理IP爬取数据:(2):使用timeout 时要注意,防止数据加载不完整 ,导致爬取丢失(举例)

    问题: 在使用代理IP爬取数据的时候,经常会出现爬取的网址信息不完整的现象.其中有个原因就是timeout设置问题. 代码如下: import requests from bs4 import Bea ...

  6. 快代理IP爬取 并建立可用IP池

    下面展示一些 内联代码片. #快代理IP爬取 并建立可用IP池 import requests import time from lxml import etree from fake_userage ...

  7. Python爬虫开源项目代码(爬取微信、淘宝、豆瓣、知乎、新浪微博、QQ、去哪网 等等)...

    文章目录 1.简介 2.开源项目Github 2.1.WechatSogou [1]– 微信公众号爬虫 2.2.DouBanSpider [2]– 豆瓣读书爬虫 2.3.zhihu_spider [3 ...

  8. Python爬虫开源项目代码(爬取微信、淘宝、豆瓣、知乎、新浪微博、QQ、去哪网 等等)

    文章目录 1.简介 2.开源项目Github 2.1.WechatSogou [1]– 微信公众号爬虫 2.2.DouBanSpider [2]– 豆瓣读书爬虫 2.3.zhihu_spider [3 ...

  9. 从入门到入土:Python爬虫学习|实例练手|爬取猫眼榜单|Xpath定位标签爬取|代码

    此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) 本人博客所有文章纯属学习之用,不涉及商业利益.不合适引用,自当删除! 若 ...

  10. 爬虫系列(1):极简爬虫——基于requests和re爬取安居客上海二手房价数据

    爬虫系列(1):极简爬虫--基于requests和re爬取安居客上海二手房价数据 入坑爬虫已经有一年多,一直想好好记录下从各位前辈和大佬处学到的技术,因此开了一个爬虫系列,想借此细致地介绍和演示其中的 ...

最新文章

  1. 基于Springboot实现在线考试管理系统
  2. 转png格式_CAD转PNG,你知道怎样转换成高质量清晰的黑白图片吗?
  3. docker commit 命令
  4. [cpyhon源代码]dict对象原理学习
  5. 在路上,继续就好了。。。。
  6. 寒武纪CTO梁军离职 公司股价跌超9%
  7. App、小程序、H5,这三者该如何抉择?
  8. 小米多主题思路分析-重定向资源篇
  9. Extjs EditorGridPanel功能
  10. JavaCV调用摄像头
  11. Python: 常用的软件包
  12. 洞态IAST Agent正式开源
  13. 计算机管理五大功能,操作系统五大管理功能包括哪些介绍大全
  14. 如何在Mac OS上从Photoshop 2020作为插件访问Topaz DeNoise AI?
  15. 经典的测试开发面试题
  16. vue 实现导出excel或文件两种方法
  17. Python练习猜拳,利用while循环自定义函数,结果数据存入excel表格
  18. css背景图片和背景颜色一起显示
  19. python简史_Python简史
  20. 抱抱脸:ChatGPT背后的算法——RLHF | 附12篇RLHF必刷论文

热门文章

  1. 游戏策划入门教程(1)工具篇
  2. ubuntu18.04 安装惠普打印机驱动和GUI界面
  3. 自学android刷机包,Android刷机包解包打包
  4. 关闭windows开机浏览器自动跳转MSN
  5. 全球地名中英文对照表(S)
  6. 全球地名中英文对照表(U-Z)
  7. python安卓手机编程入门自学_编程入门学习路线(附教程推荐)
  8. 汽车系统英文缩写大全,值得收藏
  9. 已解决:Multisim仿真出现错误:“发生了仿真错误”“收敛助手”“Transient time point calculation did not converge”
  10. JAVA实现网页版斗地主_Java实现斗地主案例