抓取网页新闻(一个新闻网页通用抽取器演示如何直接从浏览器中复制)
优采云 发布时间: 2021-10-12 08:15抓取网页新闻(一个新闻网页通用抽取器演示如何直接从浏览器中复制)
GeneralNewsExtractor,以下简称GNE,是一个通用的新闻网页提取器,可以在不指定任何提取规则的情况下提取新闻正文网站。
我们来看看它的基本用法。
安装 GNE
使用pip安装:
pip install --upgrade git+https://github.com/kingname/GeneralNewsExtractor.git
当然你也可以使用pipenv来安装:
pipenv install git+https://github.com/kingname/GeneralNewsExtractor.git#egg=gne
获取新闻页面源码
GNE目前没有,以后也不会提供网页请求的功能,所以需要想办法获取渲染出来的网页源代码。您可以使用 Selenium 或 Pyppeteer 或直接从浏览器复制。
以下是直接从浏览器复制网页源代码的方法:
在Chrome浏览器中打开对应页面,然后打开开发者工具,如下图:
在Elements标签页找到标签,右键选择Copy-Copy OuterHTML,如下图
将源码另存为1.html 提取文本信息
编写以下代码:
from gne import GeneralNewsExtractor
with open('1.html') as f:
html = f.read()
extractor = GeneralNewsExtractor()
result = extractor.extract(html)
print(result)
运行效果如下图所示:
这次更新了什么
在最新更新的v0.04版本中,开放了提取文本图片的功能和返回文本源代码的功能。上面已经演示了返回图片URL的功能,结果中的images字段就是文本中的图片。
那么如何返回body源代码呢?只需添加一个参数 with_body_html=True:
from gne import GeneralNewsExtractor
with open('1.html') as f:
html = f.read()
extractor = GeneralNewsExtractor()
result = extractor.extract(html, with_body_html=True)
print(result)
运行效果如下图所示:
返回结果中的body_html就是body的html源代码。
GNE的深入使用可以访问GNE的Github:/kingname/GeneralNewsExtractor。