python爬虫实例(urllibBeautifulSoup)
生活随笔
收集整理的這篇文章主要介紹了
python爬虫实例(urllibBeautifulSoup)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
python 2.7.6
urllib:發(fā)送報文并得到response
BeautifulSoup:解析報文的body(html)
#encoding=UTF-8 from?bs4?import?BeautifulSoup from?urllib?import?urlopen import?urlliblist_no_results=[]#沒查到的銀行卡的list list_yes_results=[]#已查到的銀行卡的list#解析報文,以字典存儲 def?parseData(htmls,code):dic={}s=BeautifulSoup(htmls)if?code=='00':list=s.find_all('td','STYLE2',align=False)dic={'id':list[0].string,'lt':list[1].string,'type':list[2].string}if?code=='01':list=s.find_all('li')dic['id']=list[3].get_text('|').split('|')[1]dic['lt']=list[4].get_text('|').split('|')[1]dic['type']=list[5].get_text('|').split('|')[1]return?dic?#卡號id,?歸屬地lt,卡種type??dict#向網(wǎng)站00和01發(fā)送查詢銀行卡信息,并得到報文body,交parseData處理,返回result字典 def?getInfoFromWeb00(cardNumStr):?#http://www.6wm.cn/card/6222020200094043425.htmlurl_get='http://www.6wm.cn/card/'+cardNumStr+'.html'get_2=urlopen(url_get).read()if?'404?Not?Found'?not?in?get_2:#pare?datareturn?parseData(get_2,'00')else:data=urllib.urlencode({'cardNum':cardNumStr})url_query='http://www.6wm.cn/bank.php'post_1=urlopen(url_query,data=data)get_2=urlopen(url_get).read()#pare?dataif?'404?Not?Found'?not?in?get_2:return?parseData(get_2,'00')else:list_no_results.append(cardNumStr)return?Falsedef?getInfoFromWeb01(cardNumStr):#http://www.cha789.com/bank_6228212028001510771.htmlurl_get='http://www.cha789.com/bank_'+cardNumStr+'.html'get_1=urlopen(url_get).read()if?'cxContext'?not?in?get_1:list_no_results.append(cardNumStr)return?Falseelse:return?parseData(get_1,'01')if __name__=='__main__':
????list_card=['……','……']#list of card string
????……
轉(zhuǎn)載于:https://blog.51cto.com/wulianwang/1586528
總結(jié)
以上是生活随笔為你收集整理的python爬虫实例(urllibBeautifulSoup)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 全排列的几个方法
- 下一篇: Windows 下 OpenGL ES