本文以實例形式講述了Python實現抓取網頁并解析的功能。主要解析問答與百度的首頁。分享給大家供大家參考之用。
主要功能代碼如下:
#!/usr/bin/python #coding=utf-8 import sys import re import urllib2 from urllib import urlencode from urllib import quote import time maxline = 2000 wenda = re.compile("href=\"http://wenda.so.com/q/.+\?src=(.+?)\"") baidu = re.compile(" 更多知道相關問題.*? ") f1 = open("baidupage.txt","w") f2 = open("wendapage.txt","w") for line in sys.stdin: if maxline == 0: break query = line.strip(); time.sleep(1); recall_url = "http://www.so.com/s?&q=" + query; response = urllib2.urlopen(recall_url); html = response.read(); f1.write(html) m = wenda.search(html); if m: if m.group(1) == "110": print query + "\twenda\t0"; else: print query + "\twenda\t1"; else: print query + "\twenda\t0"; recall_url = "http://www.baidu.com/s?wd=" + query +"&ie=utf-8"; response = urllib2.urlopen(recall_url); html = response.read(); f2.write(html) m = baidu.search(html); if m: print query + "\tbaidu\t1"; else: print query + "\tbaidu\t0"; maxline = maxline - 1; f1.close() f2.close()
希望本文所述對大家Python程序設計的學習有所幫助。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

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