phantomjs和selenium模拟登陆qq空间】的更多相关文章

# -*- coding: utf-8 -*- from selenium import webdriver import time driver =webdriver.PhantomJS() driver.maximize_window() def get_shuoshuo(): driver.get('https://user.qzone.qq.com/177472465') try: driver.find_element_by_id('login_div') a = True excep…
不多说.直接上代码 from selenium import webdriver driver = webdriver.Chrome() driver.get('http://qzone.qq.com')#打开网页 print driver.title driver.switch_to_frame('login_frame')#切换frame driver.find_element_by_id('switcher_plogin').click()#切换账号密码登陆 driver.find_ele…
使用Python+Selenium模拟登录QQ空间爬QQ空间之类的页面时大多需要进行登录,研究QQ登录规则的话,得分析大量Javascript的加密解密,这绝对能掉好几斤头发.而现在有了selenium工具,麻麻再也不用担心你的QQ登录! Selenium是一个WEB自动化测试工具,它运行时会直接实例化出一个浏览器,完全模拟用户的操作,比如点击链接.输入表单,点击按钮提交等.所以我们使用它可以很方便的来登录QQ空间. #导入selenium2中的webdriver库from selenium i…
Selenium模拟登陆百度贴吧 from selenium import webdriver from time import sleep from selenium.webdriver.common.desired_capabilities import DesiredCapabilities # dcap = dict(DesiredCapabilities.PHANTOMJS) # dcap["phantomjs.page.settings.userAgent"] = ( #…
环境: selenium-java 3.9.1 firefox 57.0 geckodriver 0.19.1 1.大概的思路就是模拟用户点击行为,关于滚动条的问题,我是模拟下拉箭头,否则只能每个相册只能爬到30个链接 2.多开标签页的原因是因为爬取多个相册时,当你爬完第一个相册无论采取什么方式总会导致当前原来的相册列表刷新,从而导致selenium的元素附着失败的异常,所以我的思路是一个相册一个标签页,全部爬取完成后再统一关闭,最开始打开的页面并没有直接用于爬取第一个相册,如果你额外新打开了标…
selenium iframe 定位  qq空间说说…
selenium 模拟登陆豆瓣,爬去武林外传的短评: 在最开始写爬虫的时候,抓取豆瓣评论,我们从F12里面是可以直接发现接口的,但是最近豆瓣更新,数据是JS异步加载的,所以没有找到合适的方法爬去,于是采用了selenium来模拟浏览器爬取. 豆瓣登陆也是改了样式,我们可以发现登陆页面是在另一个frame里面 所以代码如下: # -*- coding:utf-8 -*- # 导包 import time from selenium import webdriver from selenium.we…
1.selenium基本使用 1.selenium安装及基本操作 selenium是一个自动化测试工具,它支持各种浏览器,包括Chrome,Safari,Firefox等主流界面浏览器驱动,也包括Phantomjs的无界面浏览器. 通过selenium+phantomjs可以直接渲染js 首先,需要下载不同浏览器的驱动,直接百度搜索就可以,例如搜过Chrome浏览器驱动,下载到本地 然后,将下载好的驱动放入到安装python的根目录下,例如C:/pyhton3/usr/bin,就是要把驱动和py…
最近想做一个QQ空间点赞的小工具,于是晚上下班回来就开始分析PC版的QQ空间,打开Chrome,切换到Network,然后输入账号密码,然后点击登录... 然后,我曹....一堆请求就开始了....搞了半天,还要去分析登录的加密方法....太麻烦了... 然而我们写代码的懂不起那些... 于是就果断掏出的大杀器Selenium+PhantomJS 说了这么多要不要直接上代码啊??? 好吧,直接上代码 PhantomJSDriverService services = PhantomJSDrive…
前面我们接触到的,都是使用requests+BeautifulSoup组合对静态网页进行请求和数据解析,若是JS生成的内容,也介绍了通过寻找API借口来获取数据. 但是有的时候,网页数据由JS生成,API借口又死活找不着或者是API借口地址随机变换,时间不等人.那就只能使用Selenium了. 一.Selenium简介 Selenium是一个用于Web应用的功能自动化测试工具,Selenium 直接运行在浏览器中,就像真正的用户在操作一样.由于这个性质,Selenium也是一个强大的网络数据采集…
一.爬取qq空间好友动态数据 # 爬取qq空间好友状态信息(说说,好友名称),并屏蔽广告 from selenium import webdriver from time import sleep from lxml import etree # 自动操作浏览器 bro = webdriver.Chrome(executable_path=r'D:\爬虫+数据分析\tools\chromedriver.exe') bro.get('https://qzone.qq.com/') sleep(3)…
模拟登陆微博相对来说,并不难.验证码是常规的5个随机数字字母的组合,识别起来也比较容易.主要是用到许多Selenium中的知识,如定位标签.输入信息.点击等.如对Selenium的使用并不熟悉,请先移驾<Python爬虫 | Selenium详解>.相信你再来看本篇一定可以看懂. 破解微博登陆的思路: (1)使用webdriver打开微博网页: (2)输入用户名和密码,点击登录: (3)对第二步的结果进行判断 情况一:用户名或者密码错误 情况二:登录成功 情况三:出现验证码图片,需识别 情况四…
selenium是可以模拟浏览器操作. 有些爬虫是异步加载的,通过爬取网页源码是得不到需要的内容.所以可以模拟浏览器去登陆该网站进行爬取操作. 需要安装selenium通过pip install xxx安装,如果你使用的Anaconda3,可以使用conda install xxx这些都是可以 值得一提的是,需要下载chromdriver,就是chrome浏览器的驱动.百度搜索下载,下载之前看你的chrome的版本是几,应该下载比你浏览器的版本更高的驱动版本. 比如:我的chrome是74,那么…
如果直接使用selenium访问淘宝.新浪和知乎这些网址.一般会识别出这是自动化测试工具,会有反制措施.当开启开发者模式后,就可以绕过他们的检测啦.(不行的,哭笑) 如果网站只是对windows.navigator.webdriver进行检测.绕过网站对webdriver的特征识别1-使用splash,navigator.webdriver只适用使用webdriver的渲染工具,对splash这种使用webkit内核开发的渲染工具是无效的.2-利用selenium或者其他渲染工具执行js使nav…
代码如下: # coding:utf-8 from selenium import webdriver import requests import sys import time from lxml import etree import cPickle import os # reload(sys) # sys.setdefaultencoding('utf-8') class Zhihu: def __init__(self,homeurl): self.homeurl = homeurl…
研究QQ登录规则的话,得分析大量Javascript的加密解密,比较耗时间.自己也是练习很少,短时间成功不了.所以走了个捷径. Selenium是一个WEB自动化测试工具,它运行时会直接实例化出一个浏览器,完全模拟用户的操作,比如点击链接.输入表单,点击按钮提交等.所以我们使用它可以很方便的来登录. 但是作为新手还是多多分析,尽量少用这个,以便提高自己的技术.在研究几天,在写一个自己满意的. import time # import random from bs4 import Beautifu…
Selenium把元素定位接口封装得更简单易用了,支持Xpath.CSS选择器.以及标签名.标签属性和标签文本查找. from selenium.webdriver import PhantomJS from random import randint import time from selenium.webdriver.common.keys import Keys from requests.cookies import RequestsCookieJar import requests…
from selenium import webdriver import time # 打开浏览器 dr = webdriver.Chrome() # 打开某个网址 dr.get('https://user.qzone.qq.com/2330331400/main') # 切换框架 dr.switch_to_frame('login_frame') time.sleep(1) dr.find_element_by_link_text('帐号密码登录').click() # 输入账号 dr.fi…
由于自己不怎么会javascripts,无法找全所有的参数进行模拟提交,所以只能寻求Selenium和PhantpmJS的方式. 先说下ubuntu上怎么安装相应的环境,尤其PhantomJS安装比较蛋疼.其他内容后续再补 1.环境配置 pip install selenium 安装PhantomJS采取曲线救国的方式:先安装NodeJs, 再用NodeJS 的包管理工具安装PhantomJS. sudo apt-get install nodejs-legacy sudo apt-get in…
思路 输入用户名密码点击登陆 获取验证码的原始图片与有缺口的图片 找出两张图片的缺口起始处 拖动碎片 功能代码段 # 使用到的库 from selenium import webdriver from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.common.by import By from selenium.webdriver.support import expected_condit…
第一部:利用selenium登陆 导入selenium库 from selenium import webdriver 明确模拟浏览器在电脑中存放的位置,比如我存在当前目录 chromePath = r'.\chromedriver.exe' 用selenium的webdriver方程指明浏览器的路径,同时打开一个浏览器.模拟浏览器有多种可选,比如Firefox, Safari.本次用的是谷歌的模拟浏览器.注意:'.Chome'是大写字母. wd = webdriver.Chrome(execu…
代码: from selenium import webdriver url = 'https://passport.baidu.com/v2/?login' username = 'your_username' passwd = "your_password" driver = webdriver.Chrome() # 打开chrome浏览器 driver.get(url) # 打开指定的网页 input_username = driver.find_element_by_id(&q…
# coding=utf-8from selenium import webdriverimport jsonimport timeimport pymongo class Douyu: def __init__(self): self.driver = webdriver.Chrome() # 发送首页请求 self.driver.get("https://www.douyu.com/directory/all") self.host = '127.0.0.1' self.port…
from selenium import webdriver import time from selenium.webdriver.common.by import By from selenium.webdriver import ActionChains browser = webdriver.Chrome(r"D:\工具包\chromedriver.exe") url = "https://login.taobao.com/member/login.jhtml&quo…
12306官网登录的验证码破解比较简单,验证码是常规的点触类型验证码,使用超级鹰识别率比较高. 思路: (1)webdriver打开浏览器: (2)先对整个屏幕截屏,通过标签定位找到验证码图片,并定位到验证码图片的坐标,然后从先前截屏的图片中截取验证码部分的图片: (3)通过超级鹰识别验证码上字的坐标: (4)点击验证码图片上的字: (5) 输入用户名和密码进行登录: 注意:将以下标红部分的账号等信息换成自己的即可成功 from selenium import webdriver from se…
目前写的实在太粗糙,留着,以后来写上…
http://mp.weixin.qq.com/s?__biz=MzAxMjUyNDQ5OA==&mid=2653552228&idx=1&sn=e476bf23556406cbce7de65508d79843&chksm=806dd0d9b71a59cf2b062a19309c849a62ba15790898e5e619205f0f5ec84a90025a8cea05e9&mpshare=1&scene=23&srcid=11252MeE6Qu1D…
好久没写博文了,最近捣鼓了一下python,好像有点上瘾了,感觉python比js厉害好多,但是接触不久,只看了<[大家网]Python基础教程(第2版)[www.TopSage.com]>的前7章,好多东西还不会,能做的也比较少.我想做的是爬QQ空间,然后把空间里的留言,说说拷下来,已经成功做到了,只是,拷下来是word文档,看着没有在线看那么有感触,有些话,觉得不像自己会说的. 我花了好多时间,幸好最近清闲,有时间给我慢慢学.一开始,我使用urllib去登陆QQ空间: def getCoo…
本篇博客主要用于介绍如何使用selenium+phantomJS模拟登陆豆瓣,没有考虑验证码的问题,更多内容,请参考:Python学习指南 #-*- coding:utf-8 -*- from selenium import webdriver from selenium.webdriver.common.keys import Keys import time #如果获取页面时获取不到文本内容,加入下面参数 driver = webdriver.PhantomJS(service_args=[…
QQ空间网页版:https://user.qzone.qq.com/ 登陆后,进入设置,有一个权限设置,设置“谁能看我的空间”为好友可见,然后构造爬虫. (1)获取Cookie 两种方式: 第一种:通过chrome F12慢慢找获取 第二种:selenium模拟登陆获取 from selenium import webdriver from time import sleep import json QQ_num = '' QQ_s = '' driver = webdriver.Firefox…