用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 ...
随机推荐
- CentOS中对ext4文件系统做磁盘配额
1.修改/etc/fstab文件,使ext4文件系统支持磁盘配额. UUID="9e6dc1e8-4fc1-4984-be38-524573572d41" /mnt/ext ext ...
- vue的ajax请求之axios
axios.get(this.apiUrl+'good/info',{params:{'goodsid':'sp441153'}}) .then(function(response){ console ...
- 三十天学不会TCP,UDP/IP网络编程 - 绅士的开始
经过了过年的忙碌和年初的懈怠一切的日子,我又开始重新更新了~这是最新的一篇~完整版可以去gitbook(https://www.gitbook.com/@rogerzhu/)看到. 如果对和程序员有关 ...
- Trouble HDU - 4334
Hassan is in trouble. His mathematics teacher has given him a very difficult problem called 5-sum. P ...
- SQLiteOpenHelper与SQLiteDatabase的使用
1. 数据类型 与其它数据库不同,SQLite的数据类型很简单,只有NULL(空类型).INTEGER(整型).REAL(浮点型).TEXT(字符串型).BLOB(二进制型). SQLite为动态数据 ...
- mybatis快速入门(四)
mybatis动态标签<where><if><foreach>以及sql片段 1.创建一个包装类UserQueryVo.java package cn.my.myb ...
- 【CJOJ1090】【洛谷1967】【NOIP2013】货车运输
题面 Description A 国有 n 座城市,编号从 1 到 n,城市之间有 m 条双向道路.每一条道路对车辆都有重量限制,简称限重.现在有 q 辆货车在运输货物,司机们想知道每辆车在不超过车辆 ...
- java 动态代理 , 多看看。 多用用。
import java.lang.reflect.InvocationHandler; import java.lang.reflect.Proxy; import java.lang.reflect ...
- react-native导航器 react navigation 介绍
开发环境搭建好之后,想要进一步了解react-native,可以先从react-native官网上的电影列表案例入手: https://reactnative.cn/docs/0.51/sample- ...
- CSS备战春招の二
CSS:层叠样式表 CSS注释形式:/* */ class 选择器有别于id选择器,class可以在多个元素中使用 id属性不要以数字开头,以数字开头在特定浏览器中不起作用 类名的第一个字符不要使用 ...