python3使用selenium登录新浪微博

原创 2017年01月03日 23:43:19

关于selenium的安装详见selenium安装参考

from selenium import webdriver
import time

browser = webdriver.Chrome()
browser.set_page_load_timeout(30)    #set the amount of time to wait for a page load to complete before throwing an error.
loginurl = 'http://weibo.com/'
browser.get(loginurl)
#sign in the username //*[@id="loginname"]
try:
    browser.find_element_by_xpath('//*[@id="loginname"]').send_keys('13096925043')
    print('user success!')
except:
    print('user error!')
time.sleep(1)
user success!
#sign in the pasword
try:
    browser.find_element_by_xpath('//*[@id="pl_login_form"]/div/div[3]/div[2]/div/input').send_keys('c2ptymvr')
    print('pw success!')
except:
    print('pw error!')
time.sleep(1)
pw success!
#click to login //*[@id="pl_login_form"]/div/div[3]/div[6]/a/span
try:
    browser.find_element_by_xpath('//*[@id="pl_login_form"]/div/div[3]/div[6]/a').click()
    print('click success!')
except:
    print('click error!')
time.sleep(30)
click success!
curpage_url = browser.current_url
print(curpage_url)
while(curpage_url == loginurl):
    #print 'please input the verify code:'
    print('please input the verify code:')
    verifycode = sys.stdin.readline()
    browser.find_element_by_xpath("//div[@id='pl_login_form']/div/div[2]/div[3]/div[1]/input").send_keys(verifycode)
    try:
        browser.find_element_by_xpath("//div[@id='pl_login_form']/div/div[2]/div[6]/a").click()
        print('click success!')
    except:
         print('click error!')
    time.sleep(30)
    curpage_url = sel.current_url
http://weibo.com/u/6098838255/home
#get the session cookie
cookie = [item["name"] + "=" + item["value"] for item in browser.get_cookies()]
#print cookie

cookiestr = ';'.join(item for item in cookie)
print(cookiestr)
YF-Ugrow-G0=169004153682ef91866609488943c77f;SSOLoginState=1483456331;login_sid_t=5e75761a985330d8710501a714a55430;ULV=1483455780183:1:1:1:3875030515019.4644.1483455780177:;YF-V5-G0=dc2e98bae9c8f3ecec40249231d366d6;_s_tentry=-;YF-Page-G0=8ec35b246bb5b68c13549804abd380dc;SINAGLOBAL=3875030515019.4644.1483455780177;Apache=3875030515019.4644.1483455780177;wvr=6;WBStorage=194a5e7d191964cc|undefined;SCF=ArGdwgz-PB5szalSfnAwDMa8-P3phvugRELQx6kgMUu1gXcnTXQI63Iln9ipg-hxGoFd6TnPVucxGIzxCQhKtnY.;SUB=_2A251b885DeRxGeBO4loZ8ybOzjmIHXVWHKfxrDV8PUNbmtANLUbMkW-YFkw4zA0fq4D6yN7iZdoiA9Q2zw..;WBtopGlobal_register_version=c689c52160d0ea3b;SUHB=06ZFjMx78Vs5YT;SUBP=0033WrSXqPxfM725Ws9jqgMF55529P9D9WhngnHBZuGb0J.SaS0HK9xn5JpX5K2hUgL.Foq71KnRe0nESK-2dJLoIEBLxK-LBo.LBoqLxKBLB.2L1h.LxK-LB.2L1hqLxKnL1K-L122t;ALF=1514992361;un=13096925043
# http://weibo.com/p/1035051193258161/home?is_search=0&visible=0&is_all=1&is_tag=0&profile_ftype=1&page=2#feedtop
for page in range(1,5):
    url = 'http://weibo.com/p/1035051193258161/home?is_search=0&visible=0&is_all=1&is_tag=0&profile_ftype=1&page=%d#feedtop' % page
    browser.get(url)
    time.sleep(10)
    browser.execute_script("window.scrollTo(0, document.body.scrollHeight);")
    time.sleep(3)
    browser.execute_script("window.scrollTo(0, document.body.scrollHeight);")
    time.sleep(3)
    browser.execute_script("window.scrollTo(0, document.body.scrollHeight);")
    time.sleep(3)

参考:python 利用selenium模拟登录帐号验证网站并获取cookie

版权声明:转载请注明出处,谢谢。 举报

相关文章推荐

python模拟登录新浪微博

1.前言 从模拟登陆这件事上,可以看出公司之间的技术水平,对安全的重视程度。之前做过豆瓣的模拟登陆(链接),直接做一个post请求就OK,简直easy. 但是到新浪微博上,这个方法完全行不通,新浪微...

Python3爬虫韩寒新浪博客文章

利用Python把韩寒新浪博客每篇文章的链接找出,并把每篇文章下载为html格式文件。# -*- coding: utf-8 -*- import urllib.requesturl=['']*35...

我是如何成为一名python大咖的?

人生苦短,都说必须python,那么我分享下我是如何从小白成为Python资深开发者的吧。2014年我大学刚毕业..

python 爬虫3 新浪微博 爬虫 实战

这次的项目 和文件都放到了 github 上 https://github.com/poiu1235/weibo-catch: 有兴趣的可以follow一下,或者点个赞咯 我这里采用的深度挖掘的方...

python3爬取新浪新闻内容

代码如下:#commentsUrl用于获取新闻评论数等json信息 commentsUrl = 'http://comment5.news.sina.com.cn/page/info?version=...

Python中lambda表达式学习

lambda只是一个表达式,函数体比def简单很多。 lambda的主体是一个表达式,而不是一个代码块。仅仅能在lambda表达式中封装有限的逻辑进去。 lambda表达式是起到一个函数速写的作用...
  • imzoer
  • imzoer
  • 2013-03-13 10:51
  • 131615

[python爬虫] Selenium爬取新浪微博内容及用户信息

在进行自然语言处理、文本分类聚类、推荐系统、舆情分析等研究中,通常需要使用新浪微博的数据作为语料,这篇文章主要介绍如果使用Python和Selenium爬取自定义新浪微博语料。因为网上完整的语料比较少...

用selenium实现对微博搜索数据的抓取

 http://computational-communication.com/post/bian-cheng-gong-ju/2014-06-25-searching-weibo-with-s...

通过selenium抓取新浪微博

由于新浪微博的手机网页的访问加入了验证码,所以抓取新浪微博的后门行不通了,经过一系列的研究,最终使用selenium工具模仿浏览器行为访问新浪微博公众号,因为浏览器访问网页时是以访客的形式访问 ,所以...

七月算法课程《python爬虫》第三课: 爬虫基础知识与简易爬虫实现

这节课涉及到很多知识,CSS、XPath、Json、Dom和Sax、正则表达式、Selenium等。大家可以在W3School 和RUNOOB.COM 上了解下这方面的相关知识Json 解码与编码im...

新浪微博登录

总共三次请求: 第一次目的获取 nonce  servertime  pubkey  rsakv  pcid 第二次目的获取 ticket  loginUrl 第三次目的获取 Cookie ...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)