开发者社区> 是罗罗攀啊> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

python爬虫之图片下载APP 2.0

简介: 上次讲到利用python进行搜索并下载图片,今天更新一下,我们知道,https://www.pexels.com/ 这个网站搜索图片需要英文,但有些人不太会使用英文,想搜索什么东西需要先去翻译了才能搜索,今天调用API store里面的斯必克API进...
+关注继续查看

上次讲到利用python进行搜索并下载图片,今天更新一下,我们知道,https://www.pexels.com/ 这个网站搜索图片需要英文,但有些人不太会使用英文,想搜索什么东西需要先去翻译了才能搜索,今天调用API store里面的斯必克API进行自动翻译,这样就可以输入中文进行搜索啦!

img_47d8f812cb8d3d76bad30166402f56d7.jpe

看修改的代码:

from bs4 import BeautifulSoup
import requests
import json

headers ={
    'accept':'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',
    'Cookie':'__cfduid=dcb472bad94316522ad55151de6879acc1479632720; locale=en; _ga=GA1.2.1575445427.1479632759; _gat=1; _hjIncludedInSample=1',
    'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.143 Safari/537.36'
}

url_path = 'https://www.pexels.com/search/'
word= input('请输入你要下载的图片:')
url_tra ='http://howtospeak.org:443/api/e2c?user_key=dfcacb6404295f9ed9e430f67b641a8e &notrans=0&text=' + word
english_data = requests.get(url_tra)
js_data = json.loads(english_data.text)
content = js_data['english']
url = url_path + content + '/'
wb_data = requests.get(url,headers=headers)
soup = BeautifulSoup(wb_data.text,'lxml')
imgs = soup.select('a > img')
list = []
for img in imgs:
    photo = img.get('src')
    list.append(photo)

path = 'C://Users/Administrator/Desktop/photo/'

i = 1
for item in list:
    if item==None:
        pass
    elif '?' in item:
        data = requests.get(item,headers=headers)
        fp = open(path+content+str(i)+'.jpeg','wb')
        fp.write(data.content)
        fp.close
        i = i+1
    else:
        data = requests.get(item, headers=headers)
        fp = open(path+item[-10:],'wb')
        fp.write(data.content)
        fp.close()

总结

1 API的调用,现在许多API是json格式,我使用了json库进行解析,取我要的英语翻译构成网页
2 不足:可能会出现找不到网页的情况,因为搜索的网站构成不一样,如何智能匹配是以后需要考虑的。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Python爬虫之煎蛋网图片下载
受程序员群的影响(自己污的本性),他们总是带我开车,想想我也该收集一些资料了(美女图片) 代码 import requests from lxml import etree urls = ['http://jandan.
738 0
python爬虫之图片下载APP1.0
今天给大家来个好玩一点的,运用python爬取图片到本地,网站为https://www.pexels.com/ 这个网站为外文网,所以搜索图片要用英语,今天要做的就是在python中进行搜索和下载图片,做一个网页版的APP。
762 0
Python爬虫:scrapy管理服务器返回的cookie
Python爬虫:scrapy管理服务器返回的cookie
12 0
python爬虫:scrapy可视化管理工具spiderkeeper部署
python爬虫:scrapy可视化管理工具spiderkeeper部署
15 0
python爬虫之微打赏(scrapy版)
上次写到单线程的微打赏爬虫,知道微打赏需要用post请求,那今天看看如何用scrapy完成post请求。 创建项目 打开cmd,输入以下代码即可创建scrapy项目。
778 0
Python爬虫:Scrapy优化参数设置
Python爬虫:Scrapy优化参数设置
20 0
Python爬虫:Scrapy链接解析器LinkExtractor返回Link对象
Python爬虫:Scrapy链接解析器LinkExtractor返回Link对象
11 0
Python爬虫:Scrapy的Crawler对象及扩展Extensions和信号Signa
Python爬虫:Scrapy的Crawler对象及扩展Extensions和信号Signa
19 0
+关注
是罗罗攀啊
罗攀,硕士研究生,《从零开始学Python网络爬虫》和《从零开始学Python数据分析》作者,Python中文社区,Python爱好者社区专栏作者。擅长网络爬虫、数据分析,在web开发,数据库,机器学习等领域有所涉猎,已开设多次爬虫线上课程
120
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载