爬虫打卡(一)
项目要求:
- 手动输入isbn号,分别在当当网和京东网上爬取书籍,进行比价。
- 请求网页
- 解析网页
- 保存数据到文件
请求网页
使用requests模块,分析网页的地址(url)。
对当当网网页地址进行分析
输入一个isbn号后,网址为
点击按价格排序后,网址为
http://search.dangdang.com/?key=9787115454157&act=input&sort_type=sort_xlowprice_asc#J_tab
发现只是增加了参数
输入一个不同的isbn号是,网址为
发现只有key关键字参数发生了改变。
解析网页
从网页源码中找到要提取的信息,点击图中红色箭头标记的图标,能定位到所要提取的信息元素对应的源码。根据网页源码解析网页,根据源代码可以得到解析的规则,这时需要用到一些解析库,如BeautifulSoup ,Xpath等。
网页元素与源代码.png
保存数据到文件
就将数据保存到 csv 文件中。
背景知识
HTML页面源代码布局介绍
<!DOCTYPE html>
此标签可告知浏览器文档使用哪种 HTML 或 XHTML 规范。
XHTML规范:必须小写,有开始结束标签,属性也用双引号。
HTML规范:不区分大小写,有开始和结束标签,也可把结束标签放在开始标签里,如:<input type='text' /> 。属性可用双引号、单引号(必须配对使用)。
HTML 节点:HTML页面的根节点,页面的代码信息都放在这个节点里。
<head> 节点:头部节点。包含以下子节点:
<mete> 标签:提供页面的元信息(meta-information),比如页面关键字;
<title> 标签:页面的标题;
<script> 标签:一般存放Css和JavaScript代码的区域;
<Body> 节点:页面内容区域,存放html各元素信息
<Div> 标签 : 存放各元素控件。
<script> 标签:因为Html页面是从上到下加载,不是加载完再一次性显示内容,而是一边加载一边展示内容。
把Script放在body的后面,类似于说明此Script里的代码要调用body里的元素。若放在Head标签里,运行到此script代码时,body里的元素还没有加载,会获取不到所需的元素信息。








网友评论