欢迎光临
我们一直在努力

爬虫实战 | 爬取1号店书籍价格信息

程序设计思路

和前面的当当网一样,首先获取url地址,然后把url地址和搜索书籍的编号分离出来:

url = 'https://search.yhd.com/c0-0/k{IBSN}/'.format(IBSN=IBSN)

接下来获取HTM文档,获取Xpath对象,然后根据Xpath语法获取对应的图书列表:

#获取HTML对象
    requ = requests.get(url).text
    #获取Xpath对象
    selector = html.fromstring(requ)
    #获取列表集合
    ul_list = selector.xpath('//div[@id="itemSearchList"]/div')

通过for循环遍历,在这一步我遇到一个问题,当通过Xpath获取书籍标题时,得到的数据是一个有两个元素的数组,第一个元素是书名,第二个元素是店铺名称,自己审查1号店的HTML文档,发现并不应该如此。

title = li.xpath('div/p["@proName clearfix"]/a/@title')
print(title)

输出内容:

['东野圭吾四大推理套装(共4册)', '博库网旗舰店']

不过既然得到了,就先不深究了,等整体项目完成后再回来检查这个Bug。现在先把第一个数据取出来当做书籍标题,第二个取出来当做店铺名称。

最后把价格和购买链接也用同样的放下爬取下来,此时又出现同样有意思的事情:当爬取购买链接时,获取到的仍然是一个两个元素的数组,第一个元素是书籍地址,第二个元素是商铺地址,先取出来第一个。

所有代码都完成后,代码如下:

import requests
from lxml import html

def spider(IBSN):
    url = 'https://search.yhd.com/c0-0/k{IBSN}/'.format(IBSN=IBSN)
    #获取HTML对象
    requ = requests.get(url).text
    #获取Xpath对象
    selector = html.fromstring(requ)
    #获取列表集合
    ul_list = selector.xpath('//div[@id="itemSearchList"]/div')
    for li in ul_list:
        #爬取标题时,发现获得两个元素的数组,其中后一个元素为商铺名称
        title = li.xpath('div/p["@proName clearfix"]/a/@title')
        print(title[0])
        link = li.xpath('div/p["@proName clearfix"]/a/@href')
        link[0] = 'http:' + link[0]
        print(link[0])
        price = li.xpath('div/p["@proPrice"]/em/@yhdprice')
        print(price[0])
        store = li.xpath('div/p["@proName clearfix"]/a/@title')
        print(store[1])
        print('----------')
spider(9787544285148)

运行结果如下:

现货新华书店 正版图书 恶意(2016版) 9787544285148
http://item.yhd.com/11050391422.html
28.1
云书网旗舰店
----------
恶意(2016版) 9787544285148
http://item.yhd.com/14826182369.html
25.3
美美阳光图书专营店
----------
东野圭吾:恶意(2016版,东野圭吾四大杰作之一) 9787544285148
http://item.yhd.com/45516697863.html
39.5
鸿图图书专营店
----------
 恶意 9787544285148
http://item.yhd.com/66221790897.html
49
日月丽天图书专营店
----------
 恶意 9787544285148
http://item.yhd.com/66221486935.html
49
日月丽天图书专营店
----------
恶意(2016版) 东野圭吾,娄美莲 9787544285148 南海出版公司
http://item.yhd.com/34816701718.html
26.5
衡石图书专营店
----------
【组套两本】恶意(2016版)+时生 侦探悬疑推理小说东野圭吾全套小说集与白夜行嫌疑人X的献身解忧
http://item.yhd.com/60410296901.html
56.5
布克专营店
----------
【组套两本】恶意(2016版)+时生 侦探悬疑推理小说东野圭吾全套小说集与白夜行嫌疑人X的献身解忧
http://item.yhd.com/60410282401.html
56.5
弗洛拉图书专营店
----------
【组套两本】恶意(2016版)+时生 侦探悬疑推理小说东野圭吾全套小说集与白夜行嫌疑人X的献身解忧
http://item.yhd.com/60410287268.html
56.5
书虫图书专营店
----------
 恶意 东野圭吾 精装本 9787544285148 南海出版公司 加贺探案集 外国日本侦探悬疑推理
http://item.yhd.com/65890988778.html
38
睿畅图书专营店
----------
 恶意 东野圭吾 精装本 9787544285148 南海出版公司 加贺探案集 外国日本侦探悬疑推理
http://item.yhd.com/53605529777.html
41
瀚灏博文图书专营店
----------
正版现货 恶意 东野圭吾 精装本 9787544285148 南海出版公司 加贺探案集 外国日本侦探
http://item.yhd.com/66095440693.html
56.41
灰烬图书专营店
----------
现货 恶意 东野圭吾 精装本 9787544285148 南海出版公司 加贺探案集 外国日本侦探悬疑
http://item.yhd.com/58936152208.html
40.95
河北省新华书店图书专营店
----------
DZ 恶意(2016版) 东野圭吾,娄美莲 南海出版公司 9787544285148
http://item.yhd.com/65653706659.html
28.8
浩海图书专营店
----------
 恶意(2016版) 东野圭吾,娄美莲 南海出版公司 9787544285148
http://item.yhd.com/51280860956.html
37
淘金谷图书专营店
----------
WY现货 恶意 东野圭吾 精装本 9787544285148 南海出版公司 加贺探案集 外国日本侦探
http://item.yhd.com/64469278852.html
38.95
宝征图书专营店
----------
 恶意 东野圭吾 精装本 9787544285148 南海出版公司 加贺探案集 外国日本侦探悬疑推理
http://item.yhd.com/53658245593.html
35
淘金谷图书专营店
----------
东野圭吾:恶意(2016精装版) 9787544285148 东野圭吾,娄美莲
http://item.yhd.com/65647901707.html
41
宿迁姬美人图书专营店
----------
恶意(2016版) 东野圭吾 南海出版公司 9787544285148
http://item.yhd.com/11555409556.html
31.6
学人图书专营店
----------
现货闪发 东野圭吾-恶意+解忧杂货店(2册)
http://item.yhd.com/28650315512.html
55
久点图书专营店
----------
(2016)恶意/东野圭吾 9787544285148 (日)东野圭吾 著;娄美莲 译 南海出版公司
http://item.yhd.com/64681887466.html
32
博伊书苑图书专营店
----------
正版现货 恶意 东野圭吾 与白夜行 嫌疑人X的献身 解忧杂货店 东野圭吾小说集全套 日本侦探悬疑推理
http://item.yhd.com/44068995988.html
30.5
万邦图书城官方旗舰店
----------
东野圭吾经典长篇小说《悲剧人偶》《恶意》
http://item.yhd.com/30162404361.html
59.3
文轩网旗舰店
----------
正版 恶意 东野圭吾著与白夜行 嫌疑人X的献身 解忧杂货店 并称东野圭吾四大杰作 日本侦探/悬疑小说
http://item.yhd.com/44918602232.html
36.8
艺凡图书专营店
----------
恶意 精装版日本侦探悬疑推理文学小说 东野圭吾作品 白夜行 嫌疑人X的献身 秘密等作者出品
http://item.yhd.com/18302259275.html
39
本本图书旗舰店
----------
【新华书店旗舰店官网】恶意 东野圭吾 日本侦探悬疑推理小说 解忧杂货店 白夜行 嫌疑人X献身放学后
http://item.yhd.com/12696673375.html
27.3
凤凰新华书店旗舰店
----------
恶意(2016版)
http://item.yhd.com/28197150458.html
27.6
实验图书专营店
----------
东野圭吾四大推理套装(共4册)
http://item.yhd.com/28482585829.html
98.02
博库网旗舰店
----------
拉普拉斯的魔女+恶意(共2册)
http://item.yhd.com/13893209211.html
48.49
博库网旗舰店
----------
恶意&天使之耳(交通警察之夜) 共2册
http://item.yhd.com/49115990070.html
52.12
博库网旗舰店
----------

Process finished with exit code 0
赞(0) 打赏
未经允许不得转载:散人研 » 爬虫实战 | 爬取1号店书籍价格信息
分享到: 更多 (0)

评论 抢沙发

6 + 1 =
  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏