利用BeautifulSoup抓取新浪網頁新聞的內容

第一次寫的小爬蟲,python確實功能很強大,二十來行的代碼抓取內容並存儲爲一個txt文本html

直接上代碼python

#coding = 'utf-8'

import requests
from bs4 import BeautifulSoup
import sys
reload(sys)
sys.setdefaultencoding("utf-8")

#抓取web頁面
url = "http://news.sina.com.cn/china/"
res = requests.get(url)
res.encoding = 'utf-8'

#放進soup裏面進行網頁內容剖析
soup = BeautifulSoup(res.text, "html.parser")
elements = soup.select('.news-item')
    
#抓取須要的內容而且放入文件中
#抓取的內容有時間,內容文本,以及內容的連接
fname = "F:/asdf666.txt"
try:
    f = open(fname, 'w')
    for element in elements:
        if len(element.select('h2')) > 0:
            f.write(element.select('.time')[0].text)
            f.write(element.select('h2')[0].text)
            f.write(element.select('a')[0]['href'])
            f.write('\n\n')
    

    f.close()
except Exception, e:
    print e
else:
    pass
finally:
    pass

 由於這隻第一次作的小爬蟲,功能很簡單也很單一,就是直接抓取新聞頁面的部分新聞web

而後抓取新聞的時間和超連接url

而後按照新聞的順序整合起來,而且放進文本文件中去存儲起來spa

截取一下效果圖,效果很簡單,就是一條一條的記錄,時間,新聞內容,新聞連接(由於是今天才寫的,因此新聞都是今天的)3d

相關文章
相關標籤/搜索