代理ip

  • 获取代理ip的网站:

    • 快代理
    • 西祠代理
    • www.goubanjia.com
#代理ip
import requests
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36',
}
url = 'https://www.baidu.com/s?wd=ip'
page_text = requests.get(url=url,headers=headers,proxies={'https':'134.209.13.16:8080'}).text
with open('./ip.html','w',encoding='utf-8') as fp:fp.write(page_text)
https_proxies = [{'https':'134.209.13.16:8080'},{'https':'134.209.13.14:8080'},{'https':'134.209.13.19:8080'}
]
http_proxies = [{'http':'134.209.13.16:8080'},{'http':'134.209.13.14:8080'},{'http':'134.209.13.19:8080'}
]
#获取请求的url
url = 'https://www.baidu.com/s?wd=ip'
response = requests.get(url=url,headers=headers)
response.url.split(':')[0]

云打码平台的使用

  • 官网url:http://www.yundama.com/demo.html
  • 注册:
    • 1.普通用户
    • 2.开发者用户
  • 登录平台:
    • 1.普通用户:

      • 1.查询余额(题分)
    • 2.开发者用户:
      • 1.创建一个软件:软件的id和通讯秘钥后期在编码时会被用到
      • 2.下载示例代码:PythonHTTP
        • 开发文档-》下载最新的DLL文档-》PythonHTTP
  • 编码:
import requests
import json
import time
class YDMHttp:apiurl = 'http://api.yundama.com/api.php'username = ''password = ''appid = ''appkey = ''def __init__(self, username, password, appid, appkey):self.username = username  self.password = passwordself.appid = str(appid)self.appkey = appkeydef request(self, fields, files=[]):response = self.post_url(self.apiurl, fields, files)response = json.loads(response)return responsedef balance(self):data = {'method': 'balance', 'username': self.username, 'password': self.password, 'appid': self.appid, 'appkey': self.appkey}response = self.request(data)if (response):if (response['ret'] and response['ret'] < 0):return response['ret']else:return response['balance']else:return -9001def login(self):data = {'method': 'login', 'username': self.username, 'password': self.password, 'appid': self.appid, 'appkey': self.appkey}response = self.request(data)if (response):if (response['ret'] and response['ret'] < 0):return response['ret']else:return response['uid']else:return -9001def upload(self, filename, codetype, timeout):data = {'method': 'upload', 'username': self.username, 'password': self.password, 'appid': self.appid, 'appkey': self.appkey, 'codetype': str(codetype), 'timeout': str(timeout)}file = {'file': filename}response = self.request(data, file)if (response):if (response['ret'] and response['ret'] < 0):return response['ret']else:return response['cid']else:return -9001def result(self, cid):data = {'method': 'result', 'username': self.username, 'password': self.password, 'appid': self.appid, 'appkey': self.appkey, 'cid': str(cid)}response = self.request(data)return response and response['text'] or ''def decode(self, filename, codetype, timeout):cid = self.upload(filename, codetype, timeout)if (cid > 0):for i in range(0, timeout):result = self.result(cid)if (result != ''):return cid, resultelse:time.sleep(1)return -3003, ''else:return cid, ''def report(self, cid):data = {'method': 'report', 'username': self.username, 'password': self.password, 'appid': self.appid, 'appkey': self.appkey, 'cid': str(cid), 'flag': '0'}response = self.request(data)if (response):return response['ret']else:return -9001def post_url(self, url, fields, files=[]):for key in files:files[key] = open(files[key], 'rb');res = requests.post(url, files=files, data=fields)return res.text
# 普通用户用户名
username    = 'bobo328410948'# 密码
password    = 'bobo328410948'                            # 软件ID,开发者分成必要参数。登录开发者后台【我的软件】获得!
appid       = 6003                                     # 软件密钥,开发者分成必要参数。登录开发者后台【我的软件】获得!
appkey      = '1f4b564483ae5c907a1d34f8e2f2776c'    # 图片文件
filename    = 'getimage.jpg'                        # 验证码类型,# 例:1004表示4位字母数字,不同类型收费不同。请准确填写,否则影响识别率。在此查询所有类型 http://www.yundama.com/price.html
codetype    = 1004# 超时时间,秒
timeout     = 20                                    # 检查
if (username == 'username'):print('请设置好相关参数再测试')
else:# 初始化yundama = YDMHttp(username, password, appid, appkey)# 登陆云打码uid = yundama.login();print('uid: %s' % uid)# 查询余额balance = yundama.balance();print('balance: %s' % balance)# 开始识别,图片路径,验证码类型ID,超时时间(秒),识别结果cid, result = yundama.decode(filename, codetype, timeout);print('cid: %s, result: %s' % (cid, result))
#将验证码识别的操作封装成一个函数
def getCodeText(userName,passWord,imgPath,codeType):result = None# 普通用户用户名username    = userName# 密码password    = passWord                            # 软件ID,开发者分成必要参数。登录开发者后台【我的软件】获得!appid       = 6003                                     # 软件密钥,开发者分成必要参数。登录开发者后台【我的软件】获得!appkey      = '1f4b564483ae5c907a1d34f8e2f2776c'    # 图片文件filename    = imgPath                       # 验证码类型,# 例:1004表示4位字母数字,不同类型收费不同。请准确填写,否则影响识别率。在此查询所有类型 http://www.yundama.com/price.htmlcodetype    = codeType# 超时时间,秒timeout     = 20                                    # 检查if (username == 'username'):print('请设置好相关参数再测试')else:# 初始化yundama = YDMHttp(username, password, appid, appkey)# 登陆云打码uid = yundama.login();print('uid: %s' % uid)# 查询余额balance = yundama.balance();print('balance: %s' % balance)# 开始识别,图片路径,验证码类型ID,超时时间(秒),识别结果cid, result = yundama.decode(filename, codetype, timeout);print('cid: %s, result: %s' % (cid, result))return result

from lxml import etree
from urllib import request
url = 'http://www.renren.com/'
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36'
}
page_text = requests.get(url=url,headers=headers).text
#解析验证码图片
tree = etree.HTML(page_text)
code_img_url = tree.xpath('//*[@id="verifyPic_login"]/@src')[0]
request.urlretrieve(code_img_url,'./code.jpg')code_text = getCodeText('账号','密码','./code.jpg',2004)
print(code_text)

转载于:https://www.cnblogs.com/zhang-zi-yi/p/10749376.html

代理 IP 云打码平台的使用相关推荐

  1. requests利用selenium,代理Ip,云打码,验证码抠图操作 爬取搜狗微信公众号内容

    爬取思路,爬取搜狗微信公众号内容,爬取第一层url时请求太快出现验证码,我这里用的蘑菇云代理,并在程序中我判断什么情况下是否+代理,做到合理运用代理ip.爬取第二层url时验证码出现次数更严重(和第一 ...

  2. 07.验证码处理,云打码平台

    引入 相关的门户网站在进行登录的时候,如果用户连续登录的次数超过3次或者5次的时候,就会在登录页中动态生成验证码.通过验证码达到分流和反爬的效果. 今日概要 使用云打码平台识别验证码 知识点回顾 se ...

  3. python爬虫(云打码平台)

    处理验证码,最通用的方式就是使用三方平台帮我们对相关的验证码进行识别和处理.其中云打码平台就是一个非常通用的打码平台. http://www.yundama.com/demo.html 该平台可以帮助 ...

  4. 关于云打码平台的'PythonHttp'调用实例的使用

    一: 云打码平台的PythonHTTP的下载过程 首先先注册一个云打码平台的账号,选择开发者选项登录 文件下载流程: 最后下载的文件是: 这里使用的云打码平台的YDMHTTPD3的版本, 对应的pyt ...

  5. Reptile:requests + 云打码平台实现 识别图片验证码登陆

    使用requests加上打码平台云打码,实现登陆有图片验证的网站,是图片验证码. 豆瓣的登陆验证方式换了,换成点击验证和图片滑动验证组合的了,所以实验对象不能使用豆瓣了 图片不能是JS写入的,必须得有 ...

  6. 【产业互联网周报】三家量子计算初创企业宣布融资,华为公开量子密钥相关专利;钉钉高调押注低代码,腾讯云低码平台开启公测...

    关注ITValue,看企业级最新鲜.最价值报道! 谷歌超导量子计算机 |图 [产业互联网周报是由钛媒体TMTpost发布的特色产品,将整合本周最重要的企业级服务.云计算.大数据领域的前沿趋势.重磅政策 ...

  7. 使用python多线程获取代理IP(代理IP池,附源码)

    @[TOC]使用python多线程获取代理IP(代理IP池,附源码) 代理IP池 都说现在是大数据的时代,大多数的厂商会特别的注重自己家的数据安全问题,但同时,也有着许多的行业是需要大数据来做支撑的, ...

  8. selenium+云打码+百度ocr爬取360的电话号码标记

      抱歉,云打码公司已经倒闭,目前还未找到能替代的云服务   写了个脚本,用于从www.so.com 上查询电话号码的标记情况,记录下号码所属公司.标记类型.标记人数(如果存在).如下图红框中的信息. ...

  9. 云转码express-ffmpeg+CMS一体化系统安装教程

    项目介绍 实现大文件分块上传,批量上传. 实现服务器端自动动态码率转码并且切片,完成后会自动删除原视频文件. 实现批量添加水印和字幕,和同时处理. 实现截图,默认自动生成四张截图. 一键获取分享链接, ...

最新文章

  1. 关于javascript的keycode
  2. java点击关闭弹出窗口_java – JPopupMenu在子弹出窗口打开时关闭
  3. opensource项目_Opensource.com生日快乐:开源7年
  4. MySQL 8.0复制性能的提升(翻译)
  5. java编程思想学习笔记——第2章 一切都是对象
  6. Vsftpd-系统用户配置
  7. 多视图几何三维重建实战系列之COLMAP
  8. 产品设计学习(三)——用户画像与特征工程
  9. 树莓派 Linux 操作系统大全
  10. lisp实心圆点怎么画_cad中怎么样画实心圆点
  11. QClub:Ruby网站架构案例分享──财帮子\u0026FreeWheel
  12. 图像处理工具包实现应用图像效果
  13. 金融学习之十——远期利率和远期利率协议
  14. selected 操作
  15. 英文论文审稿意见汇总
  16. 2023年推荐几款开源或免费的web应用防火墙
  17. 如果,我是说如果 可以
  18. 达梦数据库 图形化界面安装详细教程
  19. 本地搭建部署gitlab服务并汉化
  20. 使用xsync实现进群文件对拷

热门文章

  1. 给VMware虚拟机添加TPM
  2. linux命令groups,linux 查看用户所在组(groups指令的使用) 含实例
  3. 智造之城如何突围工业互联网?岳麓峰会探底“长沙深度”
  4. 想实现前端酷炫的打字机效果吗
  5. alpine linux中文乱码,alpine 镜像 java 日志中文问号乱码
  6. 横扫千军3.3a相关资料(Some infomation about Totala Anihiliation Chinese version 3.3a)
  7. 解决目标检测中的小目标问题
  8. .Net(C#)汉字和Unicode编码互相转换
  9. Python源码剖析笔记5-模块机制
  10. 安卓扁平化之路专题(一)Android 4.4新特性