人生从来没有真正的绝境。无论遭受多少艰辛,无论经历多少苦难,只要一个人的心中还怀着一粒信念的种子,那么总有一天,他就能走出困境,让生命重新开花结果。
本文以实例形式讲述了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("rel="nofollow noopener noreferrer" href=\"http://wenda.so.com/q/.+\&;src=(.+?)\"") baidu = re.compile("<a rel="nofollow noopener noreferrer" 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程序设计的学习有所帮助。
到此这篇关于Python实现抓取网页并且解析的实例就介绍到这了。态度决定一切,实力捍卫尊严!人要经得起诱惑耐得住寂寞!更多相关Python实现抓取网页并且解析的实例内容请查看相关栏目,小编编辑不易,再次感谢大家的支持!