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

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條評論
主站蜘蛛池模板: 亚洲第一人黄所 | 免费一级毛片免费播放 | 人人干人 | a毛片免费在线观看 | 亚洲午夜在线观看 | 国产成人a v在线影院 | 久久亚洲国产最新网站 | 国内精品伊人久久久久7777人 | 国产精品视频在线播放 | 天天擦天天干 | 狠狠操夜夜爽 | 一级片视频网站 | 国产日| 青草社区视频 | 桃色视频在线观看 | 亚洲综合狠狠99婷婷 | 日本一级毛片免费播放 | 成人人观看的免费毛片 | 2021国产精品系列一区二区 | 精品不卡 | 日本高清免费不卡毛片 | 日韩欧美网站 | 久久99爱视频 | 四虎精品免费永久在线 | 99综合久久 | 中文字幕在线永久 | 人人干视频在线观看 | 99国产精品欧美久久久久久影院 | 奇米影视四色中文字幕 | 真实的国产乱xxxx | 日本在线播放一区 | 四虎精品免费永久在线 | 四虎影院永久在线 | 日韩在线视精品在亚洲 | 成年女人毛片免费视频 | 九九影院理论片 | 天天操网站 | 久久国内精品视频 | 高清黄色直接看 | 一级片特级片 | 国产ar高清视频+视频 |