爬虫爬出来的数据不全_Web Scraper教程(二)爬虫入门之当当畅销书爬取

本文通过实例介绍了如何使用Web Scraper爬取当当网近30天畅销书的书名,详细解析了创建爬虫项目、配置选择器、执行爬虫程序以及导出数据至CSV文件的步骤,旨在帮助读者掌握基本的爬虫流程。
摘要由CSDN通过智能技术生成

a4a20aa2308ce3c348d241aa22f5725b.png

你每年能读几本书?

2018年,我国人均数字阅读量为12.4本; 

2019年,我国成年人均纸质图书阅读量为4.65本。

粗略计算,我国人均每年可以读17本书,平均每月1.5本。按照从18岁成年到77岁的人均寿命计算,人的一生可以读1020本书。

当当网上的图书数量是多少?

  • 经济类:614873 本

  • 管理类:1049148 本

  • 历史类:607259 本

  • 小说类:1564887 本

可见时间有限,现代文明的成果想尽情享用还是心有余而力不足,反而应该珍惜花费时间和精力去读的那1020本书。

在读书这件事上,选书才是最重要的

亚马逊和当当的图书排行榜、名人推荐的书单、豆瓣的书评等,都可以帮助我们先做好选书这关键的第一步。

本篇文章以当当网畅销书榜为例,侧重Web Scraper的入门,爬取的内容比较简单,先掌握完整的爬虫流程,能够顺利导出爬取的数据。复杂多变的内容爬取会在后面的教程中一一讲解。

 01   爬取的榜单和内容 

进入当当畅销书榜单,选择近30天的畅销书,默认展示前20本,我们就对这20本的「书名」进行采集。

榜单网址:

http://bang.dangdang.com/books/bestsellers/01.00.00.00.00.00-recent30-0-0-1-1

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是关于使用 Python 的 web scraper 爬取级网页的简单教程: 1. 导入必要的库 在 Python 中,我们需要使用一些第三方库来实现网页爬取。其中,最为常用的包括 requests 和 BeautifulSoup。前者用于获取网页源代码,后者用于解析 HTML 代码。 ```python import requests from bs4 import BeautifulSoup ``` 2. 获取级网页 要获取级网页的内容,我们首先需要获取主网页的链接,然后使用 requests 库获取其源代码,进而找到所有级网页的链接。我们可以使用 BeautifulSoup 库解析 HTML 代码,并使用 find_all 方法找到所有 a 标签中的 href 属性,即所有链接。 ```python # 获取主网页的链接 url = "https://example.com" response = requests.get(url) soup = BeautifulSoup(response.content, "html.parser") # 获取所有级网页的链接 links = [] for link in soup.find_all("a"): href = link.get("href") if href.startswith("https://example.com/second-level"): links.append(href) ``` 这里我们假设所有级链接都以 "https://example.com/second-level" 开头。 3. 爬取级网页的内容 现在我们已经得到了所有级网页的链接,接下来就可以依次爬取它们的内容了。和获取主网页的源代码类似,我们可以使用 requests 库获取每个级网页的源代码,然后使用 BeautifulSoup 库解析 HTML 代码,找到我们需要的内容。 ```python # 爬取所有级网页的内容 for link in links: response = requests.get(link) soup = BeautifulSoup(response.content, "html.parser") # 这里可以根据需要找到需要的内容 ... ``` 这里需要注意的是,每个级网页的 HTML 代码可能会有所不同。因此,我们需要根据实际情况找到我们需要的内容。 4. 完整代码 以下是一个完整的示例程序,用于爬取某个网站中以 "https://example.com/second-level" 开头的所有级网页的标题和正文: ```python import requests from bs4 import BeautifulSoup # 获取主网页的链接 url = "https://example.com" response = requests.get(url) soup = BeautifulSoup(response.content, "html.parser") # 获取所有级网页的链接 links = [] for link in soup.find_all("a"): href = link.get("href") if href.startswith("https://example.com/second-level"): links.append(href) # 爬取所有级网页的内容 for link in links: response = requests.get(link) soup = BeautifulSoup(response.content, "html.parser") # 找到标题和正文 title = soup.find("h1").text content = soup.find("div", class_="content").text # 输出结果 print("Title:", title) print("Content:", content) ``` 这段代码可以根据实际需要进行修改。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值