批量获取代理ip
获取站大爷免费代理ip,然后打印出来,也可以把他存放在其他容器中
# coding:utf-8
import requests, re requests.packages.urllib3.disable_warnings() class IpPool:
# 获取ip地址
def getip(self):
header = {
"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9",
"Accept-Encoding": "gzip, deflate, br",
"Accept-Language": "zh-CN,zh;q=0.9",
"Cache-Control": "no-cache",
"Connection": "keep-alive",
"Cookie": "_qddac=3-4-1.2mthib.7w4yxc.kd1f5iav; __root_domain_v=.zdaye.com; _qddaz=QD.o7ezzx.wk5j9m.kc4mszqh; acw_tc=76b20f6315956673679925039e2bf4f4df78e0869342e377e87dc13e269d33; __51cke__=; _qdda=3-1.2mthib; _qddab=3-7w4yxc.kd1f5iav; _qddamta_2355087264=3-0; acw_sc__v2=5f1bf3aca8364235011db0c32cc514d94a772abe; Hm_lvt_80f407a85cf0bc32ab5f9cc91c15f88b=1593684839,1595667369,1595667382,1595667466; ASPSESSIONIDAEDCAQCD=HIDIHNOBBBHJIMGFNDDABBOF; __tins__16949115=%7B%22sid%22%3A%201595667368811%2C%20%22vd%22%3A%208%2C%20%22expires%22%3A%201595669740633%7D; __51laig__=8; Hm_lpvt_80f407a85cf0bc32ab5f9cc91c15f88b=1595667941",
"Host": "www.zdaye.com",
"Pragma": "no-cache",
"Referer": "https://www.zdaye.com/dayProxy.html",
"Sec-Fetch-Dest": "document",
'Sec-Fetch-Mode': "navigate",
"Sec-Fetch-Site": 'same-origin',
"Sec-Fetch-User": "?1",
"Upgrade-Insecure-Requests": "1",
"User-Agent": "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Mobile Safari/537.36",
}
url = 'https://www.zdaye.com/dayProxy/ip/322896.html'
response = requests.get(url=url, headers=header, verify=False)
response.encoding = response.apparent_encoding
result = re.findall('<br>(.*?)@HTTP', response.text)
print(result)
turl = 'https://www.baidu.com'
# 调用验证IP方法
self.checkip(turl, result) # 验证IP并保存
def checkip(self, url, ips):
for ip in ips:
try:
proxies = {
'http': 'http://%s' % ip,
'https': 'https://%s' % ip,
}
User_Agent = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36'
headers = {
'User-Agent': User_Agent,
}
r = requests.get(url=url, headers=headers, proxies=proxies, timeout=3)
if r.status_code == 200:
print('成功:', ip)
f = open('tbip.txt', 'r+', encoding='utf-8')
tbips = f.read()
tbipstoarray = tbips.split('\n')
# 判断如果ip不在ip池里则加入
if ip not in tbipstoarray:
f.write(ip + '\n')
f.close()
except Exception as e:
print(e) if __name__ == '__main__':
ippool = IpPool()
ippool.getip()
批量获取代理ip的更多相关文章
- python编写的自动获取代理IP列表的爬虫-chinaboywg-ChinaUnix博客
python编写的自动获取代理IP列表的爬虫-chinaboywg-ChinaUnix博客 undefined Python多线程抓取代理服务器 | Linux运维笔记 undefined java如 ...
- 分享一个获取代理ip的python函数
分享一个获取代理ip的python函数 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 #coding:utf-8 from bs4 import Beaut ...
- python爬虫之反爬虫(随机user-agent,获取代理ip,检测代理ip可用性)
python爬虫之反爬虫(随机user-agent,获取代理ip,检测代理ip可用性) 目录 随机User-Agent 获取代理ip 检测代理ip可用性 随机User-Agent fake_usera ...
- Python3.x:获取代理ip以及使用
Python3.x:获取代理ip以及使用 python爬虫浏览器伪装 #导入urllib.request模块 import urllib.request #设置请求头 headers=("U ...
- Python学习笔记六(免费获取代理IP)
为获取网上免费代理IP,闲的无聊,整合了一下,免费从三个代理网站获取免费代理IP,目的是在某一代理网站被限制时,仍可从可以访问的其他网站上获取代理IP.亲测可用哦!^_^ 仅供大家参考,以下脚本可添 ...
- python爬虫实战(一)——实时获取代理ip
在爬虫学习的过程中,维护一个自己的代理池是非常重要的. 详情看代码: 1.运行环境 python3.x,需求库:bs4,requests 2.实时抓取西刺-国内高匿代理中前3页的代理ip(可根据需求自 ...
- python获取代理IP
利用requests库获取代理,用Beautiful库解析网页筛选ip # -*- coding: utf- -*- import requests from bs4 import Beautiful ...
- 关于Re模块的一些基础知识(另附一段批量抓代理ip的代码)
1.常用匹配规则 . 表示任意字符[0-9] 用来匹配一个指定的字符类别[^5]表示除了5之外的其他字符,^不在字符串的开头,则表示它本身.* 对于前一个字符重复0到无穷次+ 对于前一个字符重复1到无 ...
- 自动获取代理IP信息的例子,含代码,分享哦,
/// <summary> /// 读取URL数据内容 /// </summary> /// <param name="url">网址</ ...
随机推荐
- 想知道Vue3与Vue2的区别?五千字教程助你快速上手Vue3!
从Vue3发布以来,我就一直对其非常感兴趣,就一直想着将其投入公司的生产中,但是开始考虑到很多不确定性就暂时对一些很小的功能进行一些尝试:慢慢的发现组合式Api的形式非常适合开发(个人感觉),尤其是V ...
- Javaweb-Servlet学习
1.Servlet简介 Servlet就是sun公司开发动态web的一门技术 Sun在这些API中提供一个借口叫做:Servlet,如果你想开发一个Servlet程序,只需要完成两个小步骤: 编写一个 ...
- 谷歌浏览器控制台 f12怎么设置成中文/英文 切换方法,一定要看到最后!!!
1.打开谷歌浏览器 2.右键选择检查或 f12 打开控制台 3.点击控制台右边的设置 4.中切英 选择偏好设置->语言=>English 5.英切中 6.选择中文 7.重启 8.切换中文成 ...
- 论文解读(LG2AR)《Learning Graph Augmentations to Learn Graph Representations》
论文信息 论文标题:Learning Graph Augmentations to Learn Graph Representations论文作者:Kaveh Hassani, Amir Hosein ...
- jenkins结合ansible发布
1. yum安装的jenkins修改配置文件调用ansible vim /etc/sysconfig/jenkins 2. 安装Jenkins Ansible插件 Manage Jenkins---& ...
- Visdom
安装visdom pip install visdom 启动visdom服务 python -m visdom.server visdom绘制各种图形: visdom属性介绍: 实例: from vi ...
- 一题多解,ASP.NET Core应用启动初始化的N种方案[下篇]
[接上篇]"天下大势,分久必合,合久必分",ASP.NET应用通过GenericWebHostService这个承载服务被整合到基于IHostBuilder/IHost的服务承载系 ...
- Css3入门详解
一.Css基本语法 1.Html和Css没分开时 点击查看代码 <!DOCTYPE html> <html lang="en"> <head> ...
- 云ATM架构设计
云ATM架构设计 启动程序(Start.java) public class Start { public static void main(String[] args) { MainView vie ...
- super详解(继承)
//在Java中,所有的类,都默认直接或者间接继承objec类// Person 人 :父类public class Person /*extends object*/ { public Person ...