Python實(shí)現(xiàn)抓取百度搜索結(jié)果頁的網(wǎng)站標(biāo)題信息

比如,你想采集標(biāo)題中包含“58同城”的SERP結(jié)果,并過濾包含有“北京”或“廈門”等結(jié)果數(shù)據(jù)。
該P(yáng)ython腳本主要是實(shí)現(xiàn)以上功能。
其中,使用BeautifulSoup來解析HTML,可以參考我的另外一篇文章:Windows8下安裝BeautifulSoup
代碼如下:
__author__ = '曾是土木人'
# -*- coding: utf-8 -*-
#采集SERP搜索結(jié)果標(biāo)題
import urllib2
from bs4 import BeautifulSoup
import time
#寫文件
def WriteFile(fileName,content):
try:
fp = file(fileName,"a+")
fp.write(content + "\r")
fp.close()
except:
pass
#獲取Html源碼
def GetHtml(url):
try:
req = urllib2.Request(url)
response= urllib2.urlopen(req,None,3)#設(shè)置超時(shí)時(shí)間
data = response.read().decode('utf-8','ignore')
except:pass
return data
#提取搜索結(jié)果SERP的標(biāo)題
def FetchTitle(html):
try:
soup = BeautifulSoup(''.join(html))
for i in soup.findAll("h3"):
title = i.text.encode("utf-8")
if any(str_ in title for str_ in ("北京","廈門")):
continue
else:
print title
WriteFile("Result.txt",title)
except:
pass
keyword = "58同城"
if __name__ == "__main__":
global keyword
start = time.time()
for i in range(0,8):
url = "http://www.baidu.com/s?wd=intitle:"+keyword+"&rn=100&pn="+str(i*100)
html = GetHtml(url)
FetchTitle(html)
time.sleep(1)
c = time.time() - start
print('程序運(yùn)行耗時(shí):%0.2f 秒'%(c))
相關(guān)文章
Python 限制線程的最大數(shù)量的方法(Semaphore)
今天小編就為大家分享一篇Python 限制線程的最大數(shù)量的方法(Semaphore),具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-02-02
詳解使用pymysql在python中對mysql的增刪改查操作(綜合)
本篇文章主要介紹了使用pymysql在python中對mysql的增刪改查操作,通過pymysql向數(shù)據(jù)庫進(jìn)行查刪增改,具有一定的參考價(jià)值,有興趣的可以了解一下。2017-01-01
tensorflow使用range_input_producer多線程讀取數(shù)據(jù)實(shí)例
今天小編就為大家分享一篇tensorflow使用range_input_producer多線程讀取數(shù)據(jù)實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01
詳解Python中@staticmethod和@classmethod區(qū)別及使用示例代碼
這篇文章主要介紹了詳解Python中@staticmethod和@classmethod區(qū)別及使用示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12
使用llama?Index幫你訓(xùn)練pdf的示例詳解
這篇文章主要為大家介紹了使用llama?Index?幫你訓(xùn)練pdf,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-03-03
舉例講解Python中的算數(shù)運(yùn)算符的用法
這篇文章主要介紹了舉例講解Python中的算數(shù)運(yùn)算符的用法,是Python學(xué)習(xí)當(dāng)中的基礎(chǔ)知識,需要的朋友可以參考下2015-05-05

