吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1850|回复: 4
收起左侧

[讨论] python爬虫中国网获取新闻资讯

[复制链接]
ai酸的博文 发表于 2020-2-13 15:24
本帖最后由 ai酸的博文 于 2020-2-13 15:25 编辑

本文仅限于学习交流

一、实现思路

1、爬取中国网http://www.china.com.cn/的所有url链接并且筛选新闻网页url
2、对筛选后的url进行遍历获取新闻标题、内容

二、源码


[Python] 纯文本查看 复制代码
import requests,re,difflib
from bs4 import BeautifulSoup

#爬取网站:中国新闻网

URL = 'http://www.china.com.cn/'
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.100 Safari/537.36'}

#-------------爬取网页源代码-------------
def _getHtml(url):
    response = requests.get(url,headers=headers)
    return response.content.decode()

def getHtml(url):
    try:
        html = _getHtml(url=url)
    except:
        html= None
    return html

#-------------获取筛选后的新闻网页-------------
def getUrl_all(URL):
    china_html = getHtml(url=URL)
    #获取网页上所有的url,很粗略。
    urlList_old = re.findall('<a href="(.*?)"',china_html)
    #从上面获取的url进行筛选,以便爬取有效的网站。
    modelUrl = 'http://news.china.com.cn/2020-02/12/content_75698735.htm'
    urlList_new = difflib.get_close_matches(modelUrl,urlList_old,300,cutoff=0.8)
    return urlList_new

#-------------爬取urlList_new的标题、内容-------------
def getInformation(urlList):
    num = 0
    for url in urlList:
        try:
            url_html = getHtml(url=url)
            soup = BeautifulSoup(url_html,'lxml')
            article = soup.find_all(class_='articleTitle')[0].get_text()
            print('新闻标题:',article)
            content_old = soup.find_all(attrs={'style':'text-indent: 2em; margin-bottom: 15px;'})
            content = ''
            for i in content_old:
                content += i.get_text().strip()
            if content=='':
                continue
            print('新闻内容:\n',content)
            num = num +1
            print('爬取成功',num,'条...')
        except:
            pass

def run():
    #1、爬取所有网站并且筛选
    urlList = getUrl_all(URL=URL)
    #2、对筛选网站获取标题、内容
    getInformation(urlList=urlList)

if __name__ == '__main__':
    run()



三、运行结果图片

run结果.png



对朋友有帮助的话记得免费评分喔~~

免费评分

参与人数 1热心值 +1 收起 理由
hshcompass + 1 热心回复!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

twostudy 发表于 2020-2-13 15:43
支持楼主,比我的爬虫全程没有函数强多了。
我最近也在爬,遇到问题准备把我的代码也拿出来让大家批评一下。
Crazy土匪 发表于 2020-2-13 15:57
hshcompass 发表于 2020-2-13 16:10
 楼主| ai酸的博文 发表于 2020-2-13 16:43
twostudy 发表于 2020-2-13 15:43
支持楼主,比我的爬虫全程没有函数强多了。
我最近也在爬,遇到问题准备把我的代码也拿出来让大家批评一下 ...

函数学一学就好了,个人感觉不是很难。大家一起学习啊~~~
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-26 20:45

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表