前几天支付宝上给出了年度账单,也手痒痒想看看京东的年度账单。找了很久,发现官方没有给。那我就试着做一个呗
结构
使用的是
requests
和Beautifulsoup4
每个订单是一个tbody,但是遇到拆分的订单,就会拆成订单个数加1的结构,第一个是一个id为parent-*的tbody,这个里面有收件人姓名,订单时间,订单号码,总金额。但是下面的拆分订单也有自己的订单号,订单金额和收货人姓名。所以对于我来说,这个parent的tbody可以直接略过。
这样, 直接找到所有的id为
tb-***
的tbody就是所有的订单了。这里的订单只有一个总价,和收货人姓名都在每个列表项的第一个列表中,可以直接find就行了。下面就是循环每个class为
tr-bd
的tr项拿到每个商品的名称、商品的链接、商品个数。但是比较扯的是。很多订单下面会又一个class为tr-bd sep-tr-bd
的空白标签,作用就是给两个商品中间加一行空格…这个有点坑,用这个代码能搞定parent.find_all(lambda tag: tag.name == 'tr' and tag.get('class') == ['tr-bd'])
就得到了只有tr-bd
的tr了。
结果
- 按理说这个爬虫已经完工了,我直接以时间为key,其他的属