【AMAD】newspaper -- 爬取/提取新闻网页中的文本,元数据
2024-10-15 20:56:04
动机
新闻网页,结构大多是类似的。
所以,能不能用一种通用的爬取方法来提取其中的数据?
简介
Newspapaer
1受到requests
那种简单性API的启发,通过lxml
来提升提取数据的速度。
用法
>>> from newspaper import Article
>>> url = 'http://fox13now.com/2013/12/30/new-year-new-laws-obamacare-pot-guns-and-drones/'
>>> article = Article(url)
>>> article.download()
>>> article.html
'<!DOCTYPE HTML><html itemscope itemtype="http://...'
>>> article.parse()
>>> article.authors
['Leigh Ann Caldwell', 'John Honway']
>>> article.publish_date
datetime.datetime(2013, 12, 30, 0, 0)
>>> article.text
'Washington (CNN) -- Not everyone subscribes to a New Year's resolution...'
>>> article.top_image
'http://someCDN.com/blah/blah/blah/file.png'
>>> article.movies
['http://youtube.com/path/to/link.com', ...]
源码分析
通用型爬虫一直是一个难以解决的问题。这个库看起来简单,其实源码结构非常复杂,还有nlp
的支持。
不过,它其实也不是那么万能:
- 首先这些提取规则只对英文类网站有效。
extractors.py
文件中,get_authors()
方法首先会看页面有没有By (?P<author>...)
字样,这显然只适合英文语法。 - 网站本身的HTML语义必须有效,否则很多提取都会失败。
extractors.py
提取很多数据,都是通过HTML元素的attr或者elem name本身来判断的,那些陈旧的网站或者React SPA这种网站,是没有效果的.
个人评分
类型 | 评分 |
---|---|
实用性 | ⭐️⭐️ |
易用性 | ⭐️⭐️⭐️⭐️ |
有趣性 | ⭐️⭐️⭐️⭐️ |
最新文章
- 20145337《Java程序设计》第八周学习总结
- 转:浅谈关于b、h标签的优化技巧
- thymeleaf中的Literals
- PHP buffer的机制
- 阿里云ecs初始化磁盘后远程连接不到服务器
- Java 本地开发环境搭建(框架采用 Spring+Spring MVC+Hibernate+Jsp+Gradle+tomcat+mysql5.6)
- spring使用之旅(一) ---- bean的装配
- 终于将 SQL Server 成功迁移至 MySQL8.0 啦!!!
- 一、Xadmin------安装
- E - Just a Hook HDU - 1698 线段树区间修改区间和模版题
- python3 元组tuple
- vue router.push(),router.replace(),router.go()和router.replace后需要返回两次的问题
- python sphinx 文档自动生成方法
- tp5 中使用自定义扩展类和函数
- SQL语句:查看排名前五的SQL语句耗时情况
- Windows XPSP3通过网络级身份验证方式连接Windows Server 2008远程桌面
- 【 js 片段 】移动端适配简易步骤
- Daily Srum 10.22
- css margin塌陷问题
- 画弧线DrawArc的研究-我自己 -- 直线交接圆角
热门文章
- veeValidate实战
- 报表开发神器!DevExpress Reporting v19.1:WinForms平台新功能
- PassengerNginxdebian快速部署Rails
- WTL自定义控件:edit内容改变响应
- jenkins 中MultiJob Phase的使用,简单的pipeline可以用这个写
- CSS3选择器:nth-child和:nth-of-type的差异
- #7 div2 B Layer Cake 造蛋糕 智商题+1
- poj 3190 贪心+优先队列优化
- 关于int main(int argc,char* argv[])详解
- Codeforces 437D The Child and Zoo(并查集)