查看原文
其他

SmartScraper | 简单、自动、快捷的Python网络爬虫

大邓 大邓和他的Python 2022-07-09


SmartScraper使页面数据抓取变得容易,不再需要学习诸如pyquery、beautifulsoup等定位包,只需要提供的url和数据给ta学习网页定位规律即可。

一、安装

pip install smartscraper



二、快速上手

2.1 获取相似结果

例如 我们想从 豆瓣读书-小说 页面获得20本书的书名和出版信息

  • P1  https://book.douban.com/tag/小说?start=0&type=T
  • P2  https://book.douban.com/tag/小说?start=20&type=T

我们使用P1链接训练书名、出版信息这两个字段

from smartscraper import SmartScraper

# 待训练的网页链接
url = 'https://book.douban.com/tag/小说?start=0&type=T'

#定义 想要的字段
wanted_dict = {"title":["活着"],
               "pub": ["余华 / 作家出版社 / 2012-8-1 / 20.00元"]
              }

# 训练/在url对应的页面中寻找wanted_dict规律
scraper = SmartScraper()
results = scraper.build(url, wanted_dict=wanted_dict)
print(results)

运行代码,采集到的results如下

{'title': ['活着'
           '房思琪的初恋乐园'
           '白夜行'
           '索拉里斯星'
           '鄙视',
           ...], 
 'pub': ['余华 / 作家出版社 / 2012-8-1 / 20.00元'
         '林奕含 / 北京联合出版公司 / 2018-2 / 45.00元'
         '[日] 东野圭吾 / 刘姿君 / 南海出版公司 / 2013-1-1 / CNY 39.50'
         '[波] 斯坦尼斯瓦夫·莱姆 / 靖振忠 / 译林出版社 / 2021-8 / 49.00元'
         '[意] 阿尔贝托·莫拉维亚 / 沈萼梅、刘锡荣 / 江苏凤凰文艺出版社 / 2021-7 / 62.00',
          ...]
}

使用刚刚训练的scraper尝试从 P2链接 获取书名和出版信息

scraper.get_result_similar('https://book.douban.com/tag/小说?start=20&type=T')

2.2 保存模型

训练的smartscraper模型可以保存,后续直接调用

scraper.save('douban_Book.pkl')

模型导入代码

scraper.load('douban_Book.pkl')

近期文章

腾讯课堂 | Python网络爬虫与文本数据分析  

DataShare | 6000+个股票的每日财经新闻

视频专栏课 | Python网络爬虫与文本分析

读完本文你就了解什么是文本分析

文本分析在经管领域中的应用概述

综述:文本分析在市场营销研究中的应用

文本分析方法在《管理世界》(2021.5)中的应用

B站视频 | Python自动化办公

wordexpansion包 | 新增词向量法构建领域词典

语法最简单的微博通用爬虫weibo_crawler

hiResearch 定义自己的科研首页

大邓github汇总, 觉得有用记得star

whatlies包 | 简单玩转词向量可视化

multistop ~ 多语言停用词库

Jaal 库 轻松绘制动态社交网络关系图

SciencePlots | 科研样式绘图库

使用streamlit上线中文文本分析网站

爬虫实战 | 采集&可视化知乎问题的回答

plydata库 | 数据操作管道操作符>>

plotnine: Python版的ggplot2作图库

Wow~70G上市公司定期报告数据集

漂亮~pandas可以无缝衔接Bokeh  

YelpDaset: 酒店管理类数据集10+G


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存