当前位置:   article > 正文

python爬虫_江河湖海csdn

江河湖海csdn

 什么是爬虫呢?

爬虫(又称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。

更详细的文档可以参考 这里


那么下面给大家看一下我写的这个爬虫吧

  1. # -*- coding:gb2312 -*-
  2. import requests
  3. import re
  4. from urllib import parse
  5. import os
  6. i = 1
  7. directory = 1
  8. class BaiduImageSpider(object):
  9. def __init__(self):
  10. self.url = 'https://image.baidu.com/search/flip?tn=baiduimage&width=&height=&word={}'
  11. self.headers = {'User-Agent':'Mozilla/4.0'}
  12. # 获取图片
  13. def get_image(self,url,word):
  14. global i
  15. global directory
  16. #使用 requests模块得到响应对象
  17. res= requests.get(url,headers=self.headers)
  18. # 更改编码格式
  19. res.encoding="utf-8"
  20. # 得到html网页
  21. html=res.text
  22. print(html)
  23. #正则解析
  24. pattern = re.compile('"hoverURL":"(.*?)"',re.S)
  25. img_link_list = pattern.findall(html)
  26. #存储图片的url链接
  27. print(img_link_list)
  28. #添加计数
  29. for img_link in img_link_list:
  30. filename = '{}{}_{}.ico'.format(directory, word, i)
  31. self.save_image(img_link,filename)
  32. i += 1
  33. #下载图片
  34. def save_image(self,img_link,filename):
  35. html = requests.get(url=img_link,headers=self.headers).content
  36. with open(filename,'wb') as f:
  37. f.write(html)
  38. print(filename,'下载成功')
  39. # 入口函数
  40. def run(self):
  41. word = input("您想要谁的照片?")
  42. page = input("您想要爬取多少页?")
  43. word_parse = parse.quote(word)
  44. # 创建目录,用于保存图片
  45. global directory
  46. directory = 'C:/Users/Administrator/Desktop/image/{}/'.format(word)
  47. # 如果目录不存在则创建,此方法常用
  48. if not os.path.exists(directory):
  49. os.makedirs(directory)
  50. for x in range(1,int(page)+1):
  51. url = self.url.format(word_parse)+"&pn="+str(((x-1)*60))
  52. self.get_image(url,word)
  53. global i
  54. i=1
  55. if __name__ == '__main__':
  56. spider = BaiduImageSpider()
  57. spider.run()

6cd3daaaa0fc4cae88e6439957e981ef.png

0d0030ad16c241ef93fb2d94ec950b67.png 6d9ce58d766d47ed97cf7dbaf2f78e84.png

 393d7724058e4faa8a23aa164f042a1d.png

c102b9f23363491aaa0caaca1b33dd94.png e6e3808a47014f17ba34366207222029.png

注意,图片格式可以随意更改

每页为60张图片 

图片存储路径也可以随意更改

可以参考Python打包exe

 

 

 

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号