python requests 爬取代理ip并验证(快代理西祠代理)
**
爬取代理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并验证(快代理西祠代理)相关推荐
- python requests 爬取数据
python requests 爬取数据 import requests from lxml import etree import time import pymysql import json h ...
- python爬取百度搜索_使用Python + requests爬取百度搜索页面
想学一下怎样用python爬取百度搜索页面,因为是第一次接触爬虫,遇到一些问题,把解决过程与大家分享一下 1.使用requests爬取网页 首先爬取百度主页www.baidu.com import r ...
- Python爬虫-爬取常用IP代理
引入包 import requests from bs4 import BeautifulSoup import re 爬取proxy360 def IPspider1():response = re ...
- python+requests+ 爬取官网双色球开奖数据
python+requests+mysql 爬取官网双色球开奖数据 分析网页数据获取方式 第一种查询方式 第二种查询方式 完整代码 分析网页数据获取方式 第一种查询方式 在官网上 可以找到多种数据查询 ...
- Python requests爬取淘宝商品信息
作者:achen 联系方式:wh909077093 这里记一下大概的思路以及实现方法,有基础的小伙伴看了基本就能实现了,如果有业务需要可以联系我哈哈哈哈哈哈 本文代码参考猪哥66的思路 项目内容 指定 ...
- Python requests爬取美桌壁纸之可爱小狗狗
爬取美桌壁纸之可爱小狗狗 最近在学爬虫,用课堂案例来巩固下学习内容,爬取的是美桌壁纸. 爬取第一页每个跳转链接的第一个图片 以下是首页面 跳转的页面: import requests from lxm ...
- Python大佬爬取了10亿票房的《西虹市首富》热评,一起来解读吧!
回复"书籍"即可获赠Python从入门到进阶共10本电子书 公众号: python教程入门学习 前言 纵观近几年的国产电影市场,"开心麻花"似乎已经成为了票房的 ...
- 使用python requests 爬取妹子图网站图片
import requests import os import re# 封面图http://mm.chinasareview.com/wp-content/uploads/2017a/07/04/l ...
- python爬取汽车之家图片,Python requests 爬取汽车之家全部品牌logo,urllib下载到本地...
首先是汽车之家品牌页面的HTML 我们定位到图片那个位置,这个img标签的src加上https就是图片完整的地址 那么品牌名称就是下面那个p标签的text 接下来我们的目的就是从中取出src和text ...
- Python requests 爬取汽车之家全部品牌logo,urllib下载到本地
首先是汽车之家品牌页面的HTML 我们定位到图片那个位置,这个img标签的src加上https就是图片完整的地址 那么品牌名称就是下面那个p标签的text 接下来我们的目的就是从中取出src和text ...
最新文章
- linux 软件安装 NOKEY问题
- python代码大全o-Python简单I/O操作示例
- 【集合论】卡氏积 ( 卡氏积概念 | 卡氏积示例 | 卡氏积性质 | 非交换性 | 非结合性 | 分配律 | 有序对为空 | n 维卡氏积 | n 维卡氏积个数 | n维卡氏积性质 )
- Java 堆内存优化
- postgresql 客户端_Postgresql体系结构
- 电脑可以开机但是黑屏_电脑开机后黑屏如何解决 电脑开机后黑屏解决方法【详解】...
- Bigtable的些许重点
- php 企业微信指令回调借款_php处理微信支付回调改变订单支付状态的代码
- QT5开发及实例学习之一main()函数相关内容介绍
- 12c emcc Algorithm negotiation fail
- protel 99se中文版
- 定时器 + websocket
- 2021-06-03TunePat Amazon Video Downloader使用教程:如何下载电影和电视节目
- DDoS deflate:自动屏蔽DDOS攻击IP
- 如何用命令行和carbite c++生成sis文件
- 利用CyclicBarrier实现赛马游戏
- QCon全球软件开发大会(北京站)2015精彩回顾和总结
- 深度解析:大数据面前,统计学的价值在哪里?
- 综合练习笔记2(用户管理系统)
- 八种提高上网速度的方法(转)
热门文章
- 趣味点名软件_网传川大教授用刷脸软件点名 无人逃课
- 知码开门的奇葩编译器
- Java扫码点餐小程序源码 SaaS系统源码 微信、支付宝扫码点餐小程序源代码
- android n换行格式,Android 写文件生成器的时候换行请用\r\n
- kali无法连接网络(网络不通)
- 加州大学伯克利分校计算机科学硕士,加州大学伯克利分校计算机硕士申请条件是什么?...
- 浙江大学吴朝晖:脑机融合系统综述
- php把图片处理成圆形透明的图片,做圆形透明头像【微信头像】
- 计算机开机进不了bios,开机进不了bios,教您怎么解决win8开机进不了bios
- 笔记本开不了机怎么办?