zoukankan      html  css  js  c++  java
  • 使用Python+Selenium模拟登录QQ空间

    使用Python+Selenium模拟登录QQ空间
    爬QQ空间之类的页面时大多需要进行登录,研究QQ登录规则的话,得分析大量Javascript的加密解密,这绝对能掉好几斤头发。而现在有了selenium工具,麻麻再也不用担心你的QQ登录!

    Selenium是一个WEB自动化测试工具,它运行时会直接实例化出一个浏览器,完全模拟用户的操作,比如点击链接、输入表单,点击按钮提交等。所以我们使用它可以很方便的来登录QQ空间。

    #导入selenium2中的webdriver库
    from selenium import webdriver

    #实例化出一个Firefox浏览器
    driver = webdriver.Firefox()

    #设置浏览器窗口的位置和大小
    driver.set_window_position(20, 40)
    driver.set_window_size(1100,700)

    #打开一个页面(QQ空间登录页)
    driver.get(‘http://qzone.qq.com’)
    #登录表单在页面的框架中,所以要切换到该框架
    driver.switch_to_frame(‘login_frame’)
    #通过使用选择器选择到表单元素进行模拟输入和点击按钮提交
    driver.find_element_by_id(‘switcher_plogin’).click()
    driver.find_element_by_id(‘u’).clear()
    driver.find_element_by_id(‘u’).send_keys(‘917464311’)
    driver.find_element_by_id(‘p’).clear()
    driver.find_element_by_id(‘p’).send_keys(‘123456’)
    driver.find_element_by_id(‘login_button’).click()

    #do something….
    #退出窗口
    driver.quit()

    这样就能方便的登录到QQ空间,下一步就可以利用这个登录状态去抓取页面内容或其它脑洞大开的应用了~~~
    安装selenium库,建议直接使用pip工具

    #pip install selenium

    2017-02-28 更新:
    有网友反映登录时出现异常,我只能表示无能为力,我只是用过selenium,并不能解决各种疑难杂症,今天又收到回复说是无法使用,我以为是腾讯改什么规则了,所以又测试了一下没发现问题,并录制了gif,如下图(点击查看高清…):

    环境:64位Win10 + chromedriver(2.27) + python2.7 + 密码在运行时已经修改了:)

    本文出自 郑晓个人博客,转载时请注明出处及相应链接。

    本文永久链接: https://www.zh30.com/python-selenium-qzone-login.html

  • 相关阅读:
    SenCha Touch AJAX跨域
    MS SQL 索引分析
    Tomcat性能优化(二) 启动参数设置
    PLSQL 连接不上64位ORACLE数据库解决办法
    PLSQL 配置连接ORACLE数据库
    Mybatis Batch 批量操作
    [No000014]听说不背单词,考英语会是这种下场-我们为什么必须背单词?
    [No000000]常用软件测试编译环境声明
    [No000013]在Office中关闭自动拼写检查和自动语法检查
    [No000012]编程中浮点数之什么是科学计数法
  • 原文地址:https://www.cnblogs.com/monsteryang/p/6626963.html
Copyright © 2011-2022 走看看