爬虫

因为爬虫需要用到请求网络部分,所以需要这两个包,没有的话自行下载即可。这个可以直接用pip安装。如果连pip都不懂,那就只能学习一下python基础了。

请求头:

headers = {‘User-Agent’:‘Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.125 Safari/537.36’
1
完整的请求:

url = ‘https://image.baidu.com/search/flip?tn=baiduimage&ie=utf-8&word==’+name+’+&pn=’+str(i*30)
result = requests.get(url,headers=headers)
dowmloadPic(result.content.decode(), name)
1
2
3
正则表达式:

pic_url = re.findall(’“objURL”:"(.*?)",’,html,re.S)
1
下载图片:

fp = open(dir, ‘wb’)
fp.write(pic.content)
fp.close()
1
2
3
完整代码:

#!/usr/bin/python

-- coding: UTF-8 --

import re
import requests
import os

def dowmloadPic(html, keyword,i):
pic_url = re.findall(’“objURL”:"(.*?)",’,html,re.S)

abc=i*60
print('找到关键词:' + keyword + '的图片,现在开始下载图片...')
for each in pic_url:
    print('正在下载第' + str(abc) + '张图片,图片地址:' + str(each))
    try:
        pic = requests.get(each, timeout=10)
    except requests.exceptions.ConnectionError:
        print('【错误】当前图片无法下载')
        continue

    dir = r'D:\image\i' + keyword + '_' + str(abc) + '.jpg'
    if not os.path.exists('D:\image'):
        os.makedirs('D:\image')
    
    fp = open(dir, 'wb')
    fp.write(pic.content)
    fp.close()
    abc += 1

if name == ‘main’:
#word = input("Input key word: ")
headers = {‘User-Agent’:‘Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.125 Safari/537.36’}
name = “清纯妹子私房照”
num = 0
x =1

for i in range(int(x)):
    url = 'https://image.baidu.com/search/flip?tn=baiduimage&ie=utf-8&word='+name+'+&pn='+str(i*30)
    print(url)
    result = requests.get(url,headers=headers)
    dowmloadPic(result.content, name,1)

print(“下载完成”)

————————————————
版权声明:本文为CSDN博主「诗一样的代码」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_57171554/article/details/116196585

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值