python 自动登陆oschina

转自:http://www.oschina.net/code/snippet_212240_57962


example2.自动登录oschina,并获取我的代码页面数据
#!/usr/bin/env python
#coding=utf-8
import mechanize
import cookielib
 
#Browser
br = mechanize.Browser()
#写入cookie
cj = cookielib.LWPCookieJar()
br.set_cookiejar(cj)
 
#options
br.set_handle_equiv( True )
br.set_handle_gzip( True )
br.set_handle_redirect( True )
br.set_handle_referer( True )
br.set_handle_robots( False )
 
#Follows refresh 0 but not hangs on refresh > 0
br.set_handle_refresh(mechanize._http.HTTPRefreshProcessor(),max_time = 1 )
 
#debugging
br.set_debug_http( True )
br.set_debug_redirects( True )
br.set_debug_responses( True )
 
#User-agent
br.addheaders = [( 'User-agent' , 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) Gecko/2008071615 Fedora/3.0.1-1.fc9 Firefox/3.0.1' )]
 
r = br. open ( 'https://www.oschina.net/home/login?goto_page=http%3A%2F%2Fwww.oschina.net%2F' )
html = r.read()
# for f in br.forms():
#     print f
 
#登陆,oschina里面的密码使用sha1进行了js加密,所以需要那真实密码进行加密登陆
br.select_form(nr = 1 )
br.form[ 'email' ] = 'you xiang'
br.form[ 'pwd' ] = 'sha1 加密后的密码'
response = br.submit()
print response.read()
 
#获取数据
r = br. open ( 'http://www.oschina.net/code/list_by_user?id=212240' )
html = r.read()
print html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值