新聞平臺(tái)聚合之新浪新聞爬蟲(chóng)發(fā)布
點(diǎn)擊上方 月小水長(zhǎng) 并 設(shè)為星標(biāo),第一時(shí)間接收干貨推送
idea of startproject
對(duì)于 web 開(kāi)發(fā)者而言,目前各大新聞門戶網(wǎng)站,新浪新聞,百度新聞,騰訊新聞,澎湃新聞,頭條新聞并沒(méi)有提供穩(wěn)定可用的 feed api。
對(duì)于 nlper,缺乏足夠的新聞?wù)Z料數(shù)據(jù)集來(lái)供訓(xùn)練。
對(duì)于新聞傳播/社會(huì)學(xué)/心理學(xué)等從業(yè)者,缺乏獲取新聞數(shù)據(jù)的簡(jiǎn)單易用途徑來(lái)供分析。
如果上面三點(diǎn)是某見(jiàn)識(shí)所限,其實(shí)并不存在的話,第 4 點(diǎn),則是某的私心,某以為互聯(lián)網(wǎng)的記憶太短了,熱搜一浪蓋過(guò)一浪,所以試圖定格互聯(lián)網(wǎng)新聞的某些瞬間,最后會(huì)以網(wǎng)站的形式發(fā)布出來(lái)。
project 的 Github:https://github.com/Python3Spiders/AllNewsSpider
新浪新聞爬蟲(chóng)
該爬蟲(chóng)實(shí)現(xiàn)的主要功能羅列如下:
全自動(dòng)爬取新浪新聞全站新聞內(nèi)容,包括 娛樂(lè)、軍事、科技、財(cái)經(jīng) 四大 category。
可以自定義輸入爬取的最大頁(yè)碼,默認(rèn)是 20 頁(yè)
字段信息齊全,如下表格
| 字段名 | 字段含義 |
|---|---|
| recode_time | 該條新聞被抓取的時(shí)間 |
| news_title | 新聞標(biāo)題 |
| news_summary | 新聞概括 |
| news_url | 新聞鏈接 |
| news_author | 新聞作者 |
| news_keywords | 新聞關(guān)鍵詞,以 ;分隔 |
| news_time | 新聞發(fā)布的時(shí)間 |
| news_content | 新聞具體內(nèi)容 |
再說(shuō)說(shuō)如何使用(默認(rèn)讀者均有 python3.6+ 環(huán)境)
將倉(cāng)庫(kù) sina 文件夾下的 sina_news_spider.pyd 文件下載到本地,新建項(xiàng)目,把 pyd 文件放進(jìn)去
項(xiàng)目根目錄下新建 runner.py,寫入以下代碼即可運(yùn)行并抓取
import sina_news_spider
sina_news_spider.main()
開(kāi)始運(yùn)行時(shí)會(huì)提示輸入爬取到哪一頁(yè),默認(rèn)是 20 頁(yè)
爬取結(jié)束了,會(huì)在當(dāng)前目錄下生成一個(gè) 新浪新聞.xlsx文件,里面保持了四個(gè) category 的所有網(wǎng)站上可瀏覽的文本新聞,一個(gè) category 對(duì)應(yīng)一個(gè) sheet_name。
本系列預(yù)告
1、nytimes 紐約時(shí)報(bào)爬蟲(chóng)
2、thetimes 泰晤士報(bào)爬蟲(chóng)
閱讀原文即可直達(dá)該爬蟲(chóng)的 Github 地址。
