用Python登录好友QQ空间点赞的示例代码

yipeiwu_com7年前Python基础

记得之前跟我女票说过,说要帮她空间点赞,点到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设计】。

相关文章

python 动态生成变量名以及动态获取变量的变量名方法

python 动态生成变量名以及动态获取变量的变量名方法

前言 需求: 必须现在需要动态创建16个list,每个list的名字不一样,但是是有规律可循,比如第一个list的名字叫: arriage_list_0=[],第二个叫arriage_...

python使用minimax算法实现五子棋

这是一个命令行环境的五子棋程序。使用了minimax算法。 除了百度各个棋型的打分方式,所有代码皆为本人所撸。本程序结构与之前的井字棋、黑白棋一模一样。 有一点小问题,没时间弄了,就这样...

Python3利用Dlib实现摄像头实时人脸检测和平铺显示示例

Python3利用Dlib实现摄像头实时人脸检测和平铺显示示例

1. 引言 在某些场景下,我们不仅需要进行实时人脸检测追踪,还要进行再加工;这里进行摄像头实时人脸检测,并对于实时检测的人脸进行初步提取; 单个/多个人脸检测,并依次在摄像头窗口,实时平...

python多进程提取处理大量文本的关键词方法

python多进程提取处理大量文本的关键词方法

经常需要通过python代码来提取文本的关键词,用于文本分析。而实际应用中文本量又是大量的数据,如果使用单进程的话,效率会比较低,因此可以考虑使用多进程。 python的多进程只需要使用...

在Python中使用元类的教程

type() 动态语言和静态语言最大的不同,就是函数和类的定义,不是编译时定义的,而是运行时动态创建的。 比方说我们要定义一个Hello的class,就写一个hello.py模块:...