python3 爬虫神器pyquery的使用实例之爬网站图片

PyQuery 可让你用 jQuery 的语法来对 xml 进行操作,这和 jQuery 十分类似。如果利用 lxml,pyquery 对 xml 和 html 的处理将更快。

如果对 jQuery 熟悉,那么 PyQuery来解析文档就是不二之选!

下面的例子是爬取 'http://so.fengniao.com/index.php?action=Image&keyword=%E7%BE%8E%E6%99%AF' 这个页面的图片然后保存到本地

 1 from pyquery import PyQuery as pq
 2 import os,requests
 3 targetDir = os.path.join(os.path.dirname(os.path.abspath(__file__)),'imgs1')#图片保存的路径
 4 if not os.path.isdir(targetDir):#不存在创建路径
 5     os.mkdir(targetDir)
 6 doc = pq('http://so.fengniao.com/index.php?action=Image&keyword=%E7%BE%8E%E6%99%AF')
 7 imgs = doc('img')#取到所有图片
 8 list_imgs = []
 9 for img in imgs.items():
10     list_imgs.append(img.attr('src'))#将所有图片链接放到列表
11 num = 0
12 for url in list_imgs:
13     r = requests.get(url)
14     image_name = os.path.join(targetDir, str(num) + '.jpg')#指定目录,图片名'xx.jpg'
15     fw = open(image_name,'wb')
16     fw.write(r.content)
17     num +=1
18     fw.close()