搜狗主动提交url并反馈快照更新软件(含源码)
本期为了满足用户的需求,特地的做了一款末so狗主动提交url以及提交快照更新软件,在做软件前,首先在python源码中,需要保证代码的运行流畅,然后才可以设计软件,在软件界面上进行任务的提交。
一、主动提交
某so狗的主动提交需要账号密码登录,然后再进行post请求,那么自然而然需要保持cookie一致或者session会话一直,这里用到session会比较方便。
1、请求验证码
验证码的源码是svg标签格式,需要通过对svg转成验证码图片,然后才能进行识别,这里识别用到了第三方打码平台,其实有免费的库可以识别或者其他方法,但是准确率不行,很容易造成so狗平台对ip的长时间的封禁,那么花点小钱用平台识别,准确率是比较高的,而且只需要验证一次就可以了。
1 2 3 4 5 6 7 8 9 10 11 12 |
#from reportlab.graphics import renderPM #from svglib.svglib import svg2rlg def code_img(self):resp = self.session.get(self.verify_url)f = StringIO(resp.text)drawing = svg2rlg(f)print(drawing)renderPM.drawToFile(drawing,f'common/1.png',fmt='JPG')img_bytes = renderPM.drawToString(drawing,fmt='JPG')# self.code = self.ocr.classification(img_bytes)self.code = self.chaojiying.PostPic(img_bytes, 1004)['pic_str']print(self.code) |
2、登录获取session
保持登录会话一致,用验证码识别结果进行post请求,返回success就表示成功了。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
def login_sougou(self):while True:self.session.get('https://zhanzhang.sougou.com')form_data = {'code':self.code,'pwd':self.password,'userid':self.username}resp = self.session.post(url=self.login_url,data=form_data,headers=self.headers).json()print(resp)# time.sleep(3)if resp['code'] == 0:breakelse:self.code_img() |
3、url主动提交
再到登录后的页面,进行url主动提交就可以了
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
def submit_url(self,url):while True:from_data = {"urls": url,"url": "","code": self.code,"role_id": 2,"site_id": 64517419,"site_address": "www.seopassion.com","urlSubFlag": 'true'}resp = self.session.post(url=self.post_url,data=from_data,headers=self.headers).json()if resp['code'] == 0:print('已成功推送')return resp['msg']elif resp['msg'] == '暂无权限':print(resp)return resp['msg']else:self.code_img()self.login_sougou() |
二、快照更新
快照更新是不需要登录的。所以会比较方便,那么在代码逻辑中,拿到post地址进行快照更新提交就ok了。
三、designer界面设计
在designer界面中,进行简单的软件设计,整体框架先罗列出来,这里就简单做了一下,没有对样式进行优化,比较简陋一点。
通过命令将ui文件转为py文件
1 |
python -m PyQt5.uic.pyuic sougou1.ui -o sougou1.py |
将软件各个按钮点击事件与我们之前的python代码进行绑定,再对数据进行界面显示,整体逻辑就这样了。
四、最后运行结果
某狗主动提交
某狗快照更新
这里软件就简单设计了一下,后面将软件封装一下,就可以长期投入使用,如果有需要源码或者软件的话,可以随时私信我vx:dan_moln 。
搜狗主动提交url并反馈快照更新软件(含源码)相关推荐
- Delphi自动提交网页表单和获取框架网页源码
这两个问题的实现原理其实是差不多的,所以放在一起介绍,单元MSHtml封装了我们需要的功能. 首先,新建一个DELPHI工程,在USES部分添加MSHtml单元的引用. 然后,在窗体上放置一个TWeb ...
- 【Active Learning - 00】主动学习重要资源总结、分享(提供源码的论文、一些AL相关的研究者)
主动学习系列博文: [Active Learning - 00]主动学习重要资源总结.分享(提供源码的论文.一些AL相关的研究者):https://blog.csdn.net/Houchaoqun_X ...
- 舔狗日记更新美化版源码
我们是狗,舔狗.基于上一版中的数据,重新设计了舔狗日记. 人肉对每段数据的内容.标点符号进行纠错与优化(不一定标准):并按本人理解进行了划重点标记. 接入和风天气API,获取城市.气象.气温.免费版每 ...
- netty tcp服务端主动断开客户端_「Netty核心技术」6-ChannelPipeline源码
ChannelPipeline是Channelhandler的容器,它负责ChannelHandler的管理和事件拦截与调度. 土话: ChannelPipeline就是用来管理Channelhand ...
- yy神曲url解析php_歪歪神曲解析源码(参考)
歪歪神曲解析源码(参考) 2018-12-4 阅读:1589 只提供参考,自行测试更多资源交流群516722628 //$url = "http://www.yy.com/x/15012_1 ...
- scrapy爬取字幕组今日更新影视-附源码
由于本人比较喜欢看美剧,字幕组的美剧资源更新又是非常快的,而本人scrapy爬虫写的也比较多,同时维护了一个小小的影视站给朋友下载,就想着能不能够用脚本实现每天的字幕组影视资源的更新与抓取,googl ...
- android asynctask源码分析,Android通过Handler与AsyncTask两种方式动态更新ListView(附源码)...
本文实例讲述了Android通过Handler与AsyncTask两种方式动态更新ListView的方法.分享给大家供大家参考,具体如下: 有时候我们需要修改已经生成的列表,添加或者修改数据,noti ...
- 2022年腾讯短链(url.cn)官方免费接口调用源码,免费API接口调用
分享一个在线腾讯短链(url.cn)生成工具,支持在线生成及接口方式生成. 腾讯短链(url.cn)在线工具 短链生成在线工具:https://www.sojson.com/dwz.html 腾讯短链 ...
- SwiftUI Widget 小组件实现时分秒时钟更新clock (教程含源码)
实战需求 目前该方案实现了秒级刷新,不过存在性能问题.对性能要求高的朋友,千万不要付费购买.本文为大家提供一个解决问题的思路.建议在iPhone 12 Pro Max上进行测试.经测试,3分钟后会自己 ...
- springboot 主键重复导致数据重复_Springboot实现防重复提交和防重复点击(附源码)...
背景# 同一条数据被用户点击了多次,导致数据冗余,需要防止弱网络等环境下的重复点击 目标# 通过在指定的接口处添加注解,实现根据指定的接口参数来防重复点击 说明# 这里的重复点击是指在指定的时间段内多 ...
最新文章
- python谁的课比较好-【年度系列】2018年学习Python最好的5门课程
- 关于JS的循环和函数,由入门到放弃
- 【素数】P1217 [USACO1.5]回文质数 Prime Palindromes
- 分页刷新(SwipeRefreshLayout+SwipeMenuRecyclerView)
- matlab编写识别手写数字_使用PYNQ搭建手写数字识别工程小白级说明(完整版)
- [每日一题] OCP1z0-047 :2013-07-14 正则表达式
- java io图_JAVA IO流结构图
- 10.11 noip模拟试题
- sylixos pci
- StringUtil里面的常用的方法
- mysql切片库_Database数据库切片模式
- Jetty和Tomcat的比较。
- 古代五大美男的悲惨结局:潘安被灭三族
- Android WebView 的回退方法(goback) 遭遇重定向
- 移动电影院迎来2.0版本,5部影片在移动电影院上举办“首映礼”
- IntelliJ IDEA如何整理代码格式
- OpenBmc开发错误6:gyp ERR! configure error gyp ERR! stack Error: socket hang up
- mmdetection训练自己的数据并评估mAP
- 准备软硬件openGauss安装环境
- chrome新版不支持旺旺 支付宝 插件的解决方法
热门文章
- std::result_of用法
- 发动机启动计算机,不自检直接启动伤车?看完发动机电脑自检原理你就明白了...
- 今天谁在开网店?兼职卖家占整体网店近70%
- 关于数据库求候选键问题
- html ico在线制作,10款免费图标生成器网页设计师
- Mac不能复制拷贝写入文件到移动硬盘,U盘怎么办
- vue 表格固定首行首列(纯css)
- 计算机原理求循环余数,国防科技大学2003年计算机原理考研试题
- java创新创业比赛项目教程_java毕业设计_springboot框架的大学生创新创业项目管理...
- ffmpeg ts与mp4互相转换