亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Python模擬百度登錄實例詳解

系統 1966 0

最近公司產品和百度貼吧合作搞活動,為了增加人氣,打算做個自動簽到的小程序。這個是測試登錄的代碼,寫的比較隨意,僅實現了登錄并讀取關注貼吧列表,下邊的就比較簡單。

百度登錄還是有點麻煩的,由于用的ssl,所以要先獲取token,然后再登錄,這個用finddle2分析下,還是比較好解決的。

            
# -*- coding: utf8 -*-
import urllib2
import urllib
import cookielib
import re
import bs4
URL_BAIDU_INDEX = u'http://www.baidu.com/';
#https://passport.baidu.com/v2/api/?getapi&class=login&tpl=mn&tangram=true 也可以用這個
URL_BAIDU_TOKEN = 'https://passport.baidu.com/v2/api/?getapi&tpl=pp&apiver=v3&class=login';
URL_BAIDU_LOGIN = 'https://passport.baidu.com/v2/api/?login';
#設置用戶名、密碼
username = '';
password = '';
#設置cookie,這里cookiejar可自動管理,無需手動指定
cj = cookielib.CookieJar();
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj));
urllib2.install_opener(opener);
reqReturn = urllib2.urlopen(URL_BAIDU_INDEX);
#獲取token,
tokenReturn = urllib2.urlopen(URL_BAIDU_TOKEN);
matchVal = re.search(u'"token" : "(?P
            
              .*?)"',tokenReturn.read());
tokenVal = matchVal.group('tokenVal');
#構造登錄請求參數,該請求數據是通過抓包獲得,對應https://passport.baidu.com/v2/api/?login請求
postData = {
'username' : username,
'password' : password,
'u' : 'https://passport.baidu.com/',
'tpl' : 'pp',
'token' : tokenVal,
'staticpage' : 'https://passport.baidu.com/static/passpc-account/html/v3Jump.html',
'isPhone' : 'false',
'charset' : 'UTF-8',
'callback' : 'parent.bd__pcbs__ra48vi'
};
postData = urllib.urlencode(postData);
#發送登錄請求
loginRequest = urllib2.Request(URL_BAIDU_LOGIN,postData);
loginRequest.add_header('Accept','text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8');
loginRequest.add_header('Accept-Encoding','gzip,deflate,sdch');
loginRequest.add_header('Accept-Language','zh-CN,zh;q=0.8');
loginRequest.add_header('User-Agent','Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.72 Safari/537.36');
loginRequest.add_header('Content-Type','application/x-www-form-urlencoded');
sendPost = urllib2.urlopen(loginRequest);
#查看貼吧個人主頁 ,測試是否登陸成功,由于cookie自動管理,這里處理起來方便很多
#http://tieba.baidu.com/home/main?un=XXXX&fr=index 這個是貼吧個人主頁,各項信息都可以在此找到鏈接
teibaUrl = 'http://tieba.baidu.com/f/like/mylike?v=1387441831248'
content = urllib2.urlopen(teibaUrl).read();
content = content.decode('gbk').encode('utf8');
print content;
#解析數據,用的BeautifulSoup4,感覺沒有jsoup用的爽
soup = bs4.BeautifulSoup(content);
list = soup.findAll('tr');
list = list[1:len(list)];
careTeibalist = [];
print '貼吧鏈接\\t吧名\\t等級';
for elem in list:
soup1 = bs4.BeautifulSoup(str(elem));
print 'http://tieba.baidu.com/'+soup1.find('a')['href']+'\\t'+soup1.find('a')['title']+'\\t'+soup1.find('a',{'class','like_badge'})['title'];
            
          

關于python模擬百度登錄相關知識就給大家介紹這么多,希望大家喜歡。


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 欧美日韩亚洲区久久综合 | 亚洲高清不卡视频 | 天天摸天天舔天天操 | 亚洲精品www久久久久久久软件 | 一本一本久久a久久综合精品蜜桃 | 久久刺激 | 老司机精品99在线播放 | 免费福利在线视频 | 国产伦精品一区二区三区无广告 | 国产精品国产自线在线观看 | 在线观看中文字幕第一页 | 乱人伦中文视频在线 | www在线小视频免费 www中文字幕 | 国产一级理论免费版 | 国产欧美另类久久精品91 | 成年女人色毛片 | 欧美特黄a级猛片a级 | 国产综合图片 | 日日夜夜天天 | 亚洲精品一区国产二区 | 精品国产一区二区三区香蕉事 | 国内精品福利在线视频 | 九九99久久精品国产 | 国产级a爱做片免费观看 | 成人欧美一区二区三区在线观看 | 国产精品久久精品 | 日韩欧美亚洲综合一区二区 | 久久九九综合 | 国产一区二区三区在线观看免费 | 一级片影院 | 国产又色又爽又黄又刺激18 | 亚洲欧美日韩中文字幕在线一区 | 在线成人欧美 | 国产一级毛片在线 | 成人国内精品久久久久影 | 69日本人xxxx16-18| 久久综合香蕉久久久久久久 | 99在线精品日韩一区免费国产 | 久久久久免费观看 | 婷婷玖玖 | 成人做爰毛片免费视频 |