0x00python
以前不知道python怎麼爬取百度的內容,由於看到有不少參數,直接複製下來改變wd參數老是會出現各類奇怪的問題url
昨晚經程師傅指點才知道原來不少參數並非必要的。今天才搜了下百度的各個參數的意義,之前竟然沒想到去搜一下百度的參數,感受本身真是太愚鈍了spa
因而,今天寫了個小小的百度爬蟲orm
0x01blog
代碼:utf-8
#!/usr/bin/python # -*- coding:utf-8 -*- # 昏鴉 import requests import re import sys def get_baidu(s,page=5): pattern = "data-tools='{\"title\":\"(.*?)\",\"url\":\"(.*?)\"" for p in xrange(0,page*10+1,10): req = "http://www.baidu.com/s?wd={}&pn={}&cl=3".format(s,p) res = requests.get(url=req).text reg = re.findall(pattern,res) for i in xrange(len(reg)): title = reg[i][0] url = requests.get(url=reg[i][1]).url print title+'\n'+url+'\n\n' if __name__=='__main__': get_baidu(sys.argv[1],int(sys.argv[2]))
結果:get
0x02requests
只爬取了百度出來的標題和URL連接,默認爬取前5頁it