首页 > 代码库 > 利用BeautifulSoup抓取新浪网页新闻的内容

利用BeautifulSoup抓取新浪网页新闻的内容

第一次写的小爬虫,python确实功能很强大,二十来行的代码抓取内容并存储为一个txt文本

直接上代码

#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

 因为这只第一次做的小爬虫,功能很简单也很单一,就是直接抓取新闻页面的部分新闻

然后抓取新闻的时间和超链接

然后按照新闻的顺序整合起来,并且放进文本文件中去存储起来

利用BeautifulSoup抓取新浪网页新闻的内容