当前位置: 首页 > 工具软件 > GNE > 使用案例 >

python GNE 爬虫通用提取文章信息模块

仉昱
2023-12-01

GNE(GeneralNewsExtractor)是一个通用新闻网站正文抽取模块,输入一篇新闻网页的 HTML, 输出正文内容、标题、作者、发布时间、正文中的图片地址和正文所在的标签源代码。GNE 在提取今日头条、网易新闻、游民星空、 观察者网、凤凰网、腾讯新闻、ReadHub、新浪新闻等数百个中文新闻网站上效果非常出色,几乎能够达到 100%的准确率。

如何安装 GNE

直接使用 pip 安装 GNE :

pip install gne

如果访问 pypi 官方源太慢,你也可以使用网易源:

pip install gne -i https://mirrors.163.com/pypi/simple/

功能特性

获取正文源代码
extract() 方法只传入网页源代码,不添加任何额外参数时,GNE 返回如下字段:

  • title:新闻标题
  • publish_time:新闻发布时间
  • author:新闻作者
  • content:新闻正文
  • images: 正文中的图片(相对路径或者绝对路径)

可能有些朋友希望获取新闻正文所在标签的源代码,此时可以给 extract() 方法传入 with_body_html 参数,设置为 True

extractor = GeneralNewsExtractor()
extractor.extract(html, with_body_html=True)

完整代码

from gne import GeneralNewsExtractor
import requests
extractor = GeneralNewsExtractor()


def parse_info(html):
    result = extractor.extract(html, with_body_html=True)
    print(result)


def run():
    headers = {
        'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36',
    }
    resp = requests.get('http://www.ciotimes.com/txhhd/212465.html', headers=headers)
    resp.encoding = 'utf8'
    # print(resp.text)
    parse_info(resp.text)


run()

虽说提取功能很强大,准确率很高,但也不是百分百,所以extract() 方法也提供了title_xpathauthor_xpathpublish_time_xpathbody_xpath等参数对特殊页面进行xpath定制。

 类似资料: