网页抓取解密( Python实现抓取网页并且解析的功能实例,(图))
优采云 发布时间: 2021-12-02 09:15网页抓取解密(
Python实现抓取网页并且解析的功能实例,(图))
爬取网页和解析示例的Python实现
更新时间:2014-09-20 17:39:07 投稿:shichen2014
本文文章主要介绍Python实现网页抓取和解析的功能实例。主要以百度问答的分析为例,说明其原理和方法。有需要的朋友可以参考以下
本文以示例的形式介绍了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("<a href=\"http://www.baidu.com/link\?url=.+\".*?>更多知道相关问题.*?</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 编程。