博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
爬网页数据
阅读量:4678 次
发布时间:2019-06-09

本文共 1536 字,大约阅读时间需要 5 分钟。

import re #导入正则表达式模块import requests #python HTTP客户端 编写爬虫和测试服务器经常用到的模块import random #随机生成一个数,范围[0,1]import osdef mkdir(path):    # 判断路径是否存在    # 存在     True    # 不存在   False    isExists=os.path.exists(path)     # 判断结果    if not isExists:        os.makedirs(path)          print (path+' 创建成功')        return True    else:        # 如果目录存在则不创建,并提示目录已存在        print (path+' 目录已存在')        return False                        #定义函数方法def spiderPic(html,keyword):    print('正在查找 ' + keyword +' 对应的图片,下载中,请稍后......')    for addr in re.findall('"objURL":"(.*?)"',html,re.S):     #查找URL        print('正在爬取URL地址:'+str(addr)[0:30]+'...')  #爬取的地址长度超过30时,用'...'代替后面的内容         try:            pics = requests.get(addr,timeout=10)  #请求URL时间(最大10秒)        except requests.exceptions.ConnectionError:            print('您当前请求的URL地址出现错误')            continue                creatDir = 'D:\\数据\\年龄性别\\myPaData\\woman\\' + keyword        mkdir(creatDir)        fq = open(creatDir + '\\' +(keyword+'_'+str(random.randrange(0,1000,4))+'.jpg'),'wb')     #下载图片,并保存和命名        fq.write(pics.content)        fq.close() #python的主方法if __name__ == '__main__':    #word = input('请输入你要搜索的图片关键字:')    f = open("D:\\数据\\年龄性别\\myPaData\\woman.txt")    s=f.read()    s1 = re.split(' ', s) #利用正则函数进行分割        for word in s1:        print (word)        result = requests.get('http://image.baidu.com/search/index?tn=baiduimage&ps=1&ct=201326592&lm=-1&cl=2&nc=1&ie=utf-8&word=' + word)        spiderPic(result.text,word)

 

转载于:https://www.cnblogs.com/crazybird123/p/10139180.html

你可能感兴趣的文章
前端MVC实践之hellorocket——by张舒彤
查看>>
OptimalSolution(2)--二叉树问题(3)Path路径问题
查看>>
IPC 之 Messenger 的使用
查看>>
爱情八十六课,等得不是爱情
查看>>
企业网站建设流程
查看>>
数据库的显示、创建、使用 、用户授权管理及忘记root用户后重置密码
查看>>
ES5和ES6中的继承 图解
查看>>
macos 下usb键盘问题.
查看>>
SQL函数学习(十六):STUFF()函数
查看>>
node上传包到npm公共库
查看>>
CI CLI执行方式
查看>>
robotframework API 源码阅读笔记----robot.utils.asserts
查看>>
201521123092《Java程序设计》第七周学习总结
查看>>
[翻译]JWA(JEDI Windows API Headers)库的readmefirst.txt文件翻译
查看>>
秒杀系统(二)
查看>>
day23---ajax跨域解决---JSONP
查看>>
redis封装 get查询/删除key/keys查询
查看>>
移动端自适应js
查看>>
Pro Android学习笔记(三二):Menu(3):Context菜单
查看>>
java中用StringBuffer写文件换行
查看>>