**

爬取代理ip并验证(快代理&西祠代理)

**

最近公司有些爬虫需求,有爬虫,就需要有代理IP池(为什么需要?自己想。),但是吧,只能用免费的,原因都懂,那来吧!

  • 快代理:https://www.kuaidaili.com/free/inha/1/
  • 西祠代理:http://www.xicidaili.com/nn/1/(我今天发现登不上,代码也贴上吧,赠人玫瑰,手有余香!)
  • 快代理

快代理


# 快代理
import requests
from lxml import etree# 将能用的代理IP追加到文件
def write_proxy(proxies):print(proxies)for proxy in proxies:with open("./1688-data/ip_proxy.txt", 'a+') as f:print("正在写入:", proxy)f.write(proxy + '\n')print("录入完成!!!")# 解析网页,并得到网页中的代理IP
def get_proxy(html):selector = etree.HTML(html)proxies = []for each in selector.xpath('//table[@class="table table-bordered table-striped"]/tbody/tr')[1:]:# ip.append(each[0])ip = each.xpath("./td[1]/text()")[0]port = each.xpath("./td[2]/text()")[0]proxy = ip + ":" + portproxies.append(proxy)print(len(proxies))test_proxies(proxies)# 验证已得到IP的可用性
def test_proxies(proxies):proxies = proxiesurl = "https://www.1688.com/"header = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36",}normal_proxies = []count = 1for proxy in proxies:print("第%s个。。" % count)count += 1try:response = requests.get(url, headers=header, proxies={"http": proxy}, timeout=1)time = response.elapsed.total_seconds()print(time)if response.status_code == 200:print("该代理IP可用:", proxy)normal_proxies.append(proxy)else:print("该代理IP不可用:", proxy)except Exception:print("该代理IP无效:", proxy)passwrite_proxy(normal_proxies)#营造请求头,获取网页相应
def get_html(url):header = {"User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36",}response = requests.get(url,headers=header,)# print(response.text)get_proxy(response.text)if __name__ == "__main__":base_url = "https://www.kuaidaili.com/free/inha/%s/"for i in range(1, 4):url = base_url % iget_html(url)

西祠代理

把 get_proxy(html)方法自己换一下,要是懒自己换一下XPATH

# 解析网页,并得到网页中的代理IP
def get_proxy(html):selector = etree.HTML(html)proxies = []for each in selector.xpath('//table[@id="ip_list"]/tr')[1:]:# ip.append(each[0])ip = each.xpath("./td[2]/text()")[0]port = each.xpath("./td[3]/text()")[0]proxy = ip + ":" + portproxies.append(proxy)print(len(proxies))test_proxies(proxies)

如果那天不管用了,换下get_proxy(html)方法中的XPATH路径应该就可以。(网站优化的话,就听天由命吧,good luck!)

对了,部分代码是参考一位老哥的,连接找不到了,老哥你要是看到了联系我,我加上参考连接!

python requests 爬取代理ip并验证(快代理西祠代理)相关推荐

  1. python requests 爬取数据

    python requests 爬取数据 import requests from lxml import etree import time import pymysql import json h ...

  2. python爬取百度搜索_使用Python + requests爬取百度搜索页面

    想学一下怎样用python爬取百度搜索页面,因为是第一次接触爬虫,遇到一些问题,把解决过程与大家分享一下 1.使用requests爬取网页 首先爬取百度主页www.baidu.com import r ...

  3. Python爬虫-爬取常用IP代理

    引入包 import requests from bs4 import BeautifulSoup import re 爬取proxy360 def IPspider1():response = re ...

  4. python+requests+ 爬取官网双色球开奖数据

    python+requests+mysql 爬取官网双色球开奖数据 分析网页数据获取方式 第一种查询方式 第二种查询方式 完整代码 分析网页数据获取方式 第一种查询方式 在官网上 可以找到多种数据查询 ...

  5. Python requests爬取淘宝商品信息

    作者:achen 联系方式:wh909077093 这里记一下大概的思路以及实现方法,有基础的小伙伴看了基本就能实现了,如果有业务需要可以联系我哈哈哈哈哈哈 本文代码参考猪哥66的思路 项目内容 指定 ...

  6. Python requests爬取美桌壁纸之可爱小狗狗

    爬取美桌壁纸之可爱小狗狗 最近在学爬虫,用课堂案例来巩固下学习内容,爬取的是美桌壁纸. 爬取第一页每个跳转链接的第一个图片 以下是首页面 跳转的页面: import requests from lxm ...

  7. Python大佬爬取了10亿票房的《西虹市首富》热评,一起来解读吧!

    回复"书籍"即可获赠Python从入门到进阶共10本电子书 公众号: python教程入门学习 前言 纵观近几年的国产电影市场,"开心麻花"似乎已经成为了票房的 ...

  8. 使用python requests 爬取妹子图网站图片

    import requests import os import re# 封面图http://mm.chinasareview.com/wp-content/uploads/2017a/07/04/l ...

  9. python爬取汽车之家图片,Python requests 爬取汽车之家全部品牌logo,urllib下载到本地...

    首先是汽车之家品牌页面的HTML 我们定位到图片那个位置,这个img标签的src加上https就是图片完整的地址 那么品牌名称就是下面那个p标签的text 接下来我们的目的就是从中取出src和text ...

  10. Python requests 爬取汽车之家全部品牌logo,urllib下载到本地

    首先是汽车之家品牌页面的HTML 我们定位到图片那个位置,这个img标签的src加上https就是图片完整的地址 那么品牌名称就是下面那个p标签的text 接下来我们的目的就是从中取出src和text ...

最新文章

  1. linux 软件安装 NOKEY问题
  2. python代码大全o-Python简单I/O操作示例
  3. 【集合论】卡氏积 ( 卡氏积概念 | 卡氏积示例 | 卡氏积性质 | 非交换性 | 非结合性 | 分配律 | 有序对为空 | n 维卡氏积 | n 维卡氏积个数 | n维卡氏积性质 )
  4. Java 堆内存优化
  5. postgresql 客户端_Postgresql体系结构
  6. 电脑可以开机但是黑屏_电脑开机后黑屏如何解决 电脑开机后黑屏解决方法【详解】...
  7. Bigtable的些许重点
  8. php 企业微信指令回调借款_php处理微信支付回调改变订单支付状态的代码
  9. QT5开发及实例学习之一main()函数相关内容介绍
  10. 12c emcc Algorithm negotiation fail
  11. protel 99se中文版
  12. 定时器 + websocket
  13. 2021-06-03TunePat Amazon Video Downloader使用教程:如何下载电影和电视节目
  14. DDoS deflate:自动屏蔽DDOS攻击IP
  15. 如何用命令行和carbite c++生成sis文件
  16. 利用CyclicBarrier实现赛马游戏
  17. QCon全球软件开发大会(北京站)2015精彩回顾和总结
  18. 深度解析:大数据面前,统计学的价值在哪里?
  19. 综合练习笔记2(用户管理系统)
  20. 八种提高上网速度的方法(转)

热门文章

  1. 趣味点名软件_网传川大教授用刷脸软件点名 无人逃课
  2. 知码开门的奇葩编译器
  3. Java扫码点餐小程序源码 SaaS系统源码 微信、支付宝扫码点餐小程序源代码
  4. android n换行格式,Android 写文件生成器的时候换行请用\r\n
  5. kali无法连接网络(网络不通)
  6. 加州大学伯克利分校计算机科学硕士,加州大学伯克利分校计算机硕士申请条件是什么?...
  7. 浙江大学吴朝晖:脑机融合系统综述
  8. php把图片处理成圆形透明的图片,做圆形透明头像【微信头像】
  9. 计算机开机进不了bios,开机进不了bios,教您怎么解决win8开机进不了bios
  10. 笔记本开不了机怎么办?