获取站大爷免费代理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的更多相关文章

  1. python编写的自动获取代理IP列表的爬虫-chinaboywg-ChinaUnix博客

    python编写的自动获取代理IP列表的爬虫-chinaboywg-ChinaUnix博客 undefined Python多线程抓取代理服务器 | Linux运维笔记 undefined java如 ...

  2. 分享一个获取代理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 ...

  3. python爬虫之反爬虫(随机user-agent,获取代理ip,检测代理ip可用性)

    python爬虫之反爬虫(随机user-agent,获取代理ip,检测代理ip可用性) 目录 随机User-Agent 获取代理ip 检测代理ip可用性 随机User-Agent fake_usera ...

  4. Python3.x:获取代理ip以及使用

    Python3.x:获取代理ip以及使用 python爬虫浏览器伪装 #导入urllib.request模块 import urllib.request #设置请求头 headers=("U ...

  5. Python学习笔记六(免费获取代理IP)

    为获取网上免费代理IP,闲的无聊,整合了一下,免费从三个代理网站获取免费代理IP,目的是在某一代理网站被限制时,仍可从可以访问的其他网站上获取代理IP.亲测可用哦!^_^  仅供大家参考,以下脚本可添 ...

  6. python爬虫实战(一)——实时获取代理ip

    在爬虫学习的过程中,维护一个自己的代理池是非常重要的. 详情看代码: 1.运行环境 python3.x,需求库:bs4,requests 2.实时抓取西刺-国内高匿代理中前3页的代理ip(可根据需求自 ...

  7. python获取代理IP

    利用requests库获取代理,用Beautiful库解析网页筛选ip # -*- coding: utf- -*- import requests from bs4 import Beautiful ...

  8. 关于Re模块的一些基础知识(另附一段批量抓代理ip的代码)

    1.常用匹配规则 . 表示任意字符[0-9] 用来匹配一个指定的字符类别[^5]表示除了5之外的其他字符,^不在字符串的开头,则表示它本身.* 对于前一个字符重复0到无穷次+ 对于前一个字符重复1到无 ...

  9. 自动获取代理IP信息的例子,含代码,分享哦,

    /// <summary> /// 读取URL数据内容 /// </summary> /// <param name="url">网址</ ...

随机推荐

  1. 为什么 C# 访问 null 字段会抛异常?

    一:背景 1. 一个有趣的话题 最近在看 硬件异常 相关知识,发现一个有意思的空引用异常问题,拿出来和大家分享一下,为了方便讲述,先上一段有问题的代码. namespace ConsoleApp2 { ...

  2. Tomcat部署界面使用burp爆破

    打开界面显示私密连接,正常抓包. 抓包查看Authorization的数据 Basic 后面的数据是经过base64加密后的.格式为admin:123456 勾选对应参数,payload设置为Cust ...

  3. 从 CPU 讲起,深入理解 Java 内存模型!

    Java 内存模型,许多人会错误地理解成 JVM 的内存模型.但实际上,这两者是完全不同的东西.Java 内存模型定义了 Java 语言如何与内存进行交互,具体地说是 Java 语言运行时的变量,如何 ...

  4. 跟着Vam一起学习Typescript(第一期)

    一.安装环境与配置1.命令行安装 npm i -g typescript 2.快捷打开Vs Code编辑器 创建一个项目文件夹,在该文件夹下打开命令行工具,使用code .命令快速打开编辑器(如果计算 ...

  5. uipath 如何利用函数split切割换行符?

    uipath 如何利用函数split切割换行符? 答案在这 https://rpazj.com/thread-178-1-1.html

  6. antd vue 折叠面板 v-for 循环点击无效

    问题描述 实现一个折叠面板点击展开,但是必须点击两次才能展开,第一次无效 <a-collapse-panel v-for="(item, index) in dataMap" ...

  7. APISpace 成语大全API接口 免费好用

    成语有一个很大一部分是从古代相承沿用下来的,在用词方面往往不同于现代汉语,它代表一个故事或者典故.成语又是一种现成的话,跟习用语.谚语相近,但是也略有区别.成语是中华文化中的一颗璀璨的明珠.   成语 ...

  8. 乐观锁和悲观锁在kubernetes中的应用

    数据竞争和竞态条件 Go并发中有两个重要的概念:数据竞争(data race)和竞争条件(race condition).在并发程序中,竞争问题可能是程序面临的最难也是最不容易发现的错误之一. 当有两 ...

  9. jdbc 09: preparedStatement实现增删改查

    jdbc连接mysql,利用preparedStatement实现增删改查 package com.examples.jdbc.o9_preparedStatement实现增删改; import ja ...

  10. 面试题:Java中为什么只有值传递?

    作者:小牛呼噜噜 | https://xiaoniuhululu.com 计算机内功.JAVA底层.面试相关资料等更多精彩文章在公众号「小牛呼噜噜 」 目录 经典的问题 形参&实参 Java是 ...