python爬虫(二)获取京东python书籍信息

    这个代码主要是为了锻炼对req对ests库和re库方法的熟练度。主要提取了书的书名、作者、出版社、价格等信息

# -*- coding: utf-8 -*-
import requests
import re
from requests.exceptions import RequestException

def get_one_page(url):
	try:
		r = requests.get(url)
		if r.status_code == 200:
			r.encoding= "utf-8"#防止乱码
			return r.text
		return None
	except RequestException:
		return None

def parse_html(html):
	pattern = re.compile(r'<li.*?class="gl-item">.*?<a.*?<img.*?source-data-lazy-img="(.*?)" />.*?</a>'
						 r'.*?<div class="p-price">.*?/em><i>(.*?)</i>.*?<div class="p-name">.*?<a.*?title="(.*?)"'
						 r'.*?<em>([\u4E00-\u9FA5|a-zA-Z\s]*?)<font.*?>(.*?)</font>(.*?)</em>'
						 r'.*?<div class="p-bookdetails"><span class="p-bi-name".*?>(.*?)<a.*?>(.*?)</a>.*?</span>'
						 r'.*?<span class="p-bi-store".*?><a.*?>(.*?)</a>.*?</span>'
						 r'.*?<div class="p-commit">.*?<a.*?>(.*?)</a>(.*?)</strong>',re.S)
	img = pattern.findall(html)
	print(len(img))
	for i in img:
        print(i[1])#价格
		print(i[3]+i[4]+i[5])#name
		print(i[6],i[7])#author
		print(i[8])#store
		print(i[9],i[10])
		print()
def main(keyword):
	url = "https://search.jd.com/Search?keyword="+keyword
	html = get_one_page(url)
	parse_html(html)

if __name__ == '__main__':
	keyword = input("请输入:")
	main(keyword)

结果:

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值