用Python登录好友QQ空间点赞
记得之前跟我女票说过,说要帮她空间点赞,点到999就不点了。刚开始还能天天记得,但是后来事情一多,就难免会忘记,前两天点赞的时候忽然觉得这样好枯燥啊,正好也在学Python,就在想能不能有什么方法能自动点赞。

以前学C借助win32API也干过操作其他应用程序的事,想想可行性还是挺高的,于是就去百度了一下。发现还真有类似的,说干就干,正好也是周末,那就直接熬夜“撸”起来吧。先上代码:
def QQZan(qq):
browser = webdriver.Chrome()
browser.maximize_window()
browser.get('https://user.qzone.qq.com/{}/main'.format(qq))
browser.switch_to_frame('login_frame')
#通过使用选择器选择到表单元素进行模拟输入和点击按钮提交
browser.find_element_by_id('switcher_plogin').click()
browser.find_element_by_id('u').clear()
browser.find_element_by_id('u').send_keys('这里填你的QQ账号')
browser.find_element_by_id('p').clear()
browser.find_element_by_id('p').send_keys('这里填你的QQ密码')
browser.find_element_by_id('login_button').click()
time.sleep(3)
browser.find_element_by_xpath('//*[@id="like"]/a[1]').click()
browser.quit()
这里定义了一个函数,输入QQ号码就可以直接登录ta的空间去点赞了。我这里是使用了Chrome浏览器去操作的,推荐大家使用Firefox。如果大家和我一样是使用Chrome,需要下载一个与你selenium对应版本的chromedriver.exe,需要下载的可以去CSDN里看看,一定要下载对应版本的。下载好之后将chromedriver.exe放到你Python的安装目录下面即可。
代码很简单,打开Chrome浏览器,最大化窗口,输入想要访问的空间,输入账号和密码登录,点击点赞按钮点赞,然后关闭浏览器。要注意的是,我这里是精简版,没有加判断没有做异常处理,比如可能你打开网页了,但是有些东西没加载出来你就直接找到输入,肯定找不到,最后也就不会成功,一般可以等待几秒,或者判断是否已经加载成功(用动态等待)。定位的方式有很多,这里不多说了,网上讲的很清楚了,自己先打开浏览器,将鼠标移到相应的位置,比如输入框,点击右键,打开检查,如下图:


通过这些基本可以定位,有些没有这些Attribute的,还可以通过Xpath等定位,操作如下:在之前检查找到的代码那里右键 ——>> Copy ——>> Copy Xpath(其他类似)
完整代码如下:
def QQZan(qq):
browser = webdriver.Chrome()
browser.maximize_window()
browser.get('https://user.qzone.qq.com/{}/main'.format(qq))
browser.switch_to_frame('login_frame')
#通过使用选择器选择到表单元素进行模拟输入和点击按钮提交
browser.find_element_by_id('switcher_plogin').click()
browser.find_element_by_id('u').clear()
browser.find_element_by_id('u').send_keys('这里填写你的QQ号码')
browser.find_element_by_id('p').clear()
browser.find_element_by_id('p').send_keys('这里填写你的QQ密码')
browser.find_element_by_id('login_button').click()
time.sleep(3)
browser.find_element_by_xpath('//*[@id="like"]/a[1]').click()
browser.quit()
QQZan('想要点赞的QQ号码')
用Python登录好友QQ空间点赞的更多相关文章
- 用python爬取QQ空间
好久没写博文了,最近捣鼓了一下python,好像有点上瘾了,感觉python比js厉害好多,但是接触不久,只看了<[大家网]Python基础教程(第2版)[www.TopSage.com]> ...
- H5分享到微信好友朋友圈QQ好友QQ空间微博二维码
这是分享按钮: <button onclick="call()">通用分享</button> <button onclick="call(' ...
- 每日技术总结:jquery datetimepicker,微博QQ好友QQ空间微信等分享接口
前言: 1.jquery datetimepicker 今天遇到一个日期控件格式的问题,默认选中显示的并不是设定的值,而是当天的日期.于是去查了一遍文档. 参考文章:jquery datetimepi ...
- Python爬取qq空间说说
#coding:utf-8 #!/usr/bin/python3 from selenium import webdriver import time import re import importl ...
- QQ空间点赞代码
jQuery("a.qz_like_btn_v3[data-clicklog='like']").each(function(index,item){ console.log(it ...
- Python案例之QQ空间自动登录程序实现
不多说,直接上干货! 工具选择: 电脑系统:win7,32 位,下面第二部安装SetupTools时注意系统版本要求: Python: 2.7.11, 相信只要是2.7的就可以实现: Seleniu ...
- 翻翻git之---实现QQ空间点赞部分实现的自己定义控件 EasyLikeArea
转载请注明出处:王亟亟的大牛之路 昨天在家里弄鱼的事没上班,也就没写东西.决定今天早上补一篇,正好看到了 Easy like area in the circle of friends or QQ q ...
- 手机QQ空间自动点赞登录
学以致用~使用 Appium 模拟人类操控手机行为 V2.0在手机上运行,目前实现以下功能: 1.小黑屋模式,一分钟内给好友发100条消息然后进了好友的小黑屋 2.定时发消息提醒对象多喝热水~ 3.对 ...
- 使用Python+Selenium模拟登录QQ空间
使用Python+Selenium模拟登录QQ空间爬QQ空间之类的页面时大多需要进行登录,研究QQ登录规则的话,得分析大量Javascript的加密解密,这绝对能掉好几斤头发.而现在有了seleniu ...
随机推荐
- java并发:Synchronized 原理
1.同步代码块: 反编译结果: monitorenter : 每个对象有一个监视器锁(monitor).当monitor被占用时就会处于锁定状态,线程执行monitorenter指令时尝试获取moni ...
- ajax就收data的参数
一,变量 "data": ${cityData},//数据(必传) 二,json data:{"state":"Front"},
- How I explained OOD to my wife(转)
How I explained OOD to my wife Learning Object Oriented Design principles through interesting conver ...
- Python爬虫之模拟登录微信wechat
不知何时,微信已经成为我们不可缺少的一部分了,我们的社交圈.关注的新闻或是公众号.还有个人信息或是隐私都被绑定在了一起.既然它这么重要,如果我们可以利用爬虫模拟登录,是不是就意味着我们可以获取这些信息 ...
- 对于Hibernate和MyBatis的区别与利弊,谈谈你的看法
Hibernate与MyBatis的对比: 1.MyBatis非常简单易学,与Hibernate相对复杂,门槛较高: 2.两者都是比较优秀的开源产品: 3.当系统属于二次开发,无法对于数据库结构做到控 ...
- 【Luogu3398】仓鼠找sugar(树链剖分)
[Luogu3398]仓鼠找sugar(树链剖分) 题面 题目描述 小仓鼠的和他的基(mei)友(zi)sugar住在地下洞穴中,每个节点的编号为1~n.地下洞穴是一个树形结构.这一天小仓鼠打算从从他 ...
- 【Chrome控制台】获取元素上绑定的事件信息以及监控事件
需求场景 在前端开发中,偶尔需要验证下某个元素上到底绑定了哪些事件,以及监控某个元素上的事件触发情况. 解决方案 普通操作 之前面对这种情况,一般采取的措施就是在各个事件里写console.info, ...
- 解决Android Studio 3.0导入module依赖后unable to merge index
解决Android Studio 3.0导入module依赖后unable to merge index 项目需要使用im, 在项目里导入了腾讯im的几个module依赖, 项目无法编译, 报错una ...
- 记录一个前端bug的解决过程
人在江湖飘,哪能不挨刀. 我挨了重重一bug.严格来讲这可能是我职业生涯以来的首个悲惨经历,因为凭我的知识储备和经验,基本上任何可重现的bug都是可解的.然而这个bug却困扰了我三个月之久,它具有以下 ...
- kerberos下JAVA代码操作hbase的方式(客户端方式,应用程序方式)
(一)如果部署JAVA 代码的主机用户获取了kerberos权限情况下 假设主机名是:client su - client 登录主机后 kinit -kt /keytab的路径/client.keyt ...