Python實現(xiàn)抓取網(wǎng)頁并且解析的實例
更新時間:2014年09月20日 17:39:07 投稿:shichen2014
這篇文章主要介紹了Python實現(xiàn)抓取網(wǎng)頁并且解析的功能實例,主要以解析百度問答為例說明其原理與方法,需要的朋友可以參考下
本文以實例形式講述了Python實現(xiàn)抓取網(wǎng)頁并解析的功能。主要解析問答與百度的首頁。分享給大家供大家參考之用。
主要功能代碼如下:
#!/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("<a href=\"http://www.baidu.com/link\?url=.+\".*?>更多知道相關(guān)問題.*?</a>")
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程序設(shè)計的學習有所幫助。
您可能感興趣的文章:
- Python 抓取動態(tài)網(wǎng)頁內(nèi)容方案詳解
- 零基礎(chǔ)寫python爬蟲之使用urllib2組件抓取網(wǎng)頁內(nèi)容
- python抓取網(wǎng)頁內(nèi)容示例分享
- Python實現(xiàn)周期性抓取網(wǎng)頁內(nèi)容的方法
- python抓取網(wǎng)頁中圖片并保存到本地
- Python3使用requests包抓取并保存網(wǎng)頁源碼的方法
- python抓取網(wǎng)頁圖片并放到指定文件夾
- 用Python程序抓取網(wǎng)頁的HTML信息的一個小實例
- Python爬蟲實現(xiàn)網(wǎng)頁信息抓取功能示例【URL與正則模塊】
- Python簡單實現(xiàn)網(wǎng)頁內(nèi)容抓取功能示例
相關(guān)文章
tensorflow保持每次訓練結(jié)果一致的簡單實現(xiàn)
今天小編就為大家分享一篇tensorflow保持每次訓練結(jié)果一致的實現(xiàn),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-02-02

