利用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

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

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

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

截取一下效果图,效果很简单,就是一条一条的记录,时间,新闻内容,新闻链接(因为是今天才写的,所以新闻都是今天的)

原文地址:https://www.cnblogs.com/xuchao/p/6056691.html