python爬取百度美女图片

PHPz
PHPz 原创
2017-04-04 10:34:21 2617浏览

通过python批量自动化下载百度美女图片

效果是这样的


效果展示

我的代码

import requests
import re


翻页查看图片模式

#获取每页图片的访问链接
def get_page():
    urls=['http://image.baidu.com/search/flip?tn=baiduimage&ie=utf-8&word=%E7%BE%8E%E5%A5%B3%E5%9B%BE%E7%89%87&pn={}&gsm=3c00000000003c'.format(num) for num in range(0,20000,20)]
    for url in urls:
        print(url)
        get_img_link(url)
#从网页中获取每个图片的访问链接
def get_img_link(url):
    r=requests.get(url)
    #print(r.encoding)
    r.encoding='utf-8'
    html_code=r.text
    reg=re.compile(r'"objURL":"(.*?)"')
    imgs=re.findall(reg,html_code)
    # print(imgs)
    for img in imgs:
        #print(img)
        down_img(img)
#图片下载保存再本地
def down_img(url):
    web_data=requests.get(url)
    filename=url.split('/')[-1]
    targetfile='E:/pict_baidu/{}'.format(filename)
    with open(targetfile,'wb') as f:
        f.write(web_data.content)
if name=='main':
    get_page()

总结

  • 爬虫思路-获取多页访问链接->获取每页图片链接->图片下载;

  • 正则表达式的使用;

  • format与with open as语法的使用;

  • 编码方式调整;

  • requests与re模块的使用。

以上就是python爬取百度美女图片的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。