继续我们的有趣的 Python 库之旅 ——
一个小小的库,或许能避免重复造轮子
一个不显眼的功能,也许能在关键时刻拯救我们
一个出乎意料的方法,或许能激发更多创意灵感
一个独特的技能,也许能成为我们的守护神……
俗话说爬虫好写,内容难提,特别是要提取页面上的主要信息时,常常会被不同的页面结构和规则弄得很狼狈。
如果你还需要获得作者、发布日期、关键字等信息,那就更难了。
不过,不用慌张,已经有个 Python 库为你做好准备了,它就是 —— Newspaper3k!
什么是 Newspaper3k?
Newspaper3k 不仅可以帮助你抓取文章,解析出干净的文本,而且还能自动提取关键信息,如作者、发布日期、关键字等。
更惊艳的是它还可以支持多种语言,从英文到中文,再到阿拉伯语等等,这一切都变得易如反掌。
Newspaper3k 启发自 requests 库的简单性,并借助 lxml 的速度优势,成为了处理新闻抓取任务的优选库。
虽然它支持 Python 2,但是强烈推荐您在 Python 3 环境下使用,以享受更稳定和更强大的功能。
Newspaper3k 是在 Python 环境中进行新闻文章抓取和内容解析的测试库。由 Lucas Ou-Yang 创建,并在 Github 上得到了社区的积极维护和更新。
项目地址:https://github.com/codelucas/newspaper
安装
通过 pip 可以轻松安装 Newspaper3k:
pip3installnewspaper3k
注意:请确保使用
pip3
命令安装newspaper3k
,而不是newspaper
。
基本用法
使用新闻源
使用 Newspaper3k 搭建一个新闻源,我们可以抽取它的所有文章和分类链接:
importnewspaper cnn_paper=newspaper.build('http://cnn.com') forarticleincnn_paper.articles: print(article.url) forcategoryincnn_paper.category_urls(): print(category)
处理单篇文章
处理新闻文章主要涉及几个关键步骤:下载、解析和自然语言处理。以下是针对单个文章操作示例:
fromnewspaperimportArticle url='http://fox13now.com/2013/12/30/new-year-new-laws-obamacare-pot-guns-and-drones/' article=Article(url) #下载文章 article.download() #解析文章 article.parse() #获取作者 print(article.authors) #获取发布日期 print(article.publish_date) #获取顶部图片 print(article.top_image) #文章摘要 article.nlp() print(article.summary)
注意:使用 nlp,需要下载 NLTK 数据,可能会比较慢
详细信息可参考:https://www.nltk.org/data.html
多语言
Newspaper3k 支持多种语言,包括但不限于中文、英文和阿拉伯语。它可以无缝提取和检测语言,如果没有指定语言,Newspaper3k 将尝试自动检测:
fromnewspaperimportArticle url="https://news.sina.com.cn/c/2024-01-26/doc-inaewiyx7293475.shtml" a=Article(url,language='zh')#使用中文 a.download() a.parse() print(a.text[:30]) print(a.title)
应该能输出:
1月26日,2024年春运正式启动。统筹冬季寒潮大风和海冰等 我国三大海域举行海空立体巡航及演练全力保障海上安全
实践一下
试试自己抓取一个新闻网站的文章和相关信息。
首先,选择一个新闻网站,例如 BBC 中文网。
然后使用 Newspaper3k 的API 来查看有哪些文章可用并提取它们的内容。
注意:请遵守目标网站的爬虫限制政策
总结
Newspaper3k 是一个功能强大的 Python 库,能帮助您轻松地提取和分析网络新闻文章。
使用它,你不仅可以抓取新闻内容,而且能进行深度学习,提取文章的关键信息。
此外,它对多语言和并行处理的支持使它成为处理大规模新闻数据的一个理想工具。有了 Newspaper3k,世界新闻的门户轻轻松松就可以打开了。
比心!
示例代码:
**https://github.com/alisx/amazing_python_lib/
以上就是“Newspaper3k —— 一个神奇的 Python 库”的全部内容,希望对你有所帮助。
关于Python技术储备
学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!
一、Python所有方向的学习路线
Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
二、Python必备开发工具
三、Python视频合集
观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
四、实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
五、Python练习题
检查学习结果。
六、面试资料
我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
最后祝大家天天进步!!
上面这份完整版的Python全套学习资料已经上传至CSDN官方,朋友如果需要可以直接微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】。