Python爬取设计素材网站,免费使用素材~

前言

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理。

PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取

python免费学习资料以及群交流解答点击即可加入

相关环境配置

  • python 3.6
  • pycharm
  • requests
  • parsel

相关模块pip安装即可

确定目标网页

在这里插入图片描述
我想要爬取这些素材图片,那首先要从尾开始找起,先要知道素材下载的地址是什么
在这里插入图片描述

在这里插入图片描述
通过点击素材进入素材详情页,可以看到本地下载地址,多复制几个素材的下载地址链接:

http://www.aiimg.com/sucai.php?open=1&aid=126632&uhash=70a6d2ffc358f79d9cf71392
http://www.aiimg.com/sucai.php?open=1&aid=126630&uhash=99b07c347dc24533ccc1c144
http://www.aiimg.com/sucai.php?open=1&aid=126634&uhash=d7e8f7f02f57568e280190b4

每个链接的aid不一样,这个应该就是素材的每个ID,后面的uhash又是什么呢
原本想着网页数据里面是否有接口数据可以直接找到这个参数,在开发者工具里面搜索并没有这个参数,看一下网页源代码里面是否有这个下载链接~
在这里插入图片描述
有这个链接的话,咱们获取链接之后就可以直接下载~

常规操作:

1.打开开发者工具,查看网页是否返回自己想要获取的数据。

在这里插入图片描述
在这里插入图片描述
可以发现,咱们需要的数据都在网页的标签里面,请求网页获取返回数据

import requests
url = 'http://www.aiimg.com/list.php?tid=1&ext=0&free=2&TotalResult=5853&PageNo=1'
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36'
}
response = requests.get(url=url, headers=headers)
print(response.text)

在这里插入图片描述

解析网页数据

import parsel
selector = parsel.Selector(response.text)
lis = selector.css('.imglist_d ul li a::attr(href)').getall()
for li in lis:
    num_id = li.replace('.html', '').split('/')[-1]
    new_url = 'http://www.aiimg.com/sucai.php?aid={}'.format(num_id)
    response_2 = requests.get(url=new_url, headers=headers)
    selector_2 = parsel.Selector(response_2.text)
    data_url = selector_2.css('.downlist a.down1::attr(href)').get()
    title = selector_2.css('.toart a::text').get()
    download_url = 'http://www.aiimg.com' + data_url

在这里插入图片描述

保存数据

素材都是psd、ai或者cdr的文件 保存之后都是zip压缩包的形式

def download(url, title):
    path = '路径' + title + '.zip'
    response = requests.get(url=url, headers=headers)
    with open(path, mode='wb') as f:
        f.write(response.content)
        print('{}已经下载完成'.format(title))

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这个是只是单页的爬取,也可以实现多页爬取~

Python爬取网站上的图片或其他资源(通常称为"素材"),通常涉及网络爬虫技术,特别是在使用诸如requests、BeautifulSoup、Scrapy等库时。以下是一个简单的步骤概述: 1. **安装必要的库**:首先需要安装`requests`库来发送HTTP请求获取网页内容,以及像`beautifulsoup4`或`lxml`这样的解析库来解析HTML。 ```bash pip install requests beautifulsoup4 ``` 2. **发送请求**:使用`requests.get()`函数获取网页内容。如果目标站点有反爬机制,可能需要添加headers模拟浏览器行为,甚至处理cookies或session。 3. **解析HTML**:使用BeautifulSoup解析HTML文档,找到包含所需素材的标签,如`<img>`(图片)或`<a>`(链接到其他资源)。 ```python import requests from bs4 import BeautifulSoup url = 'http://example.com' response = requests.get(url) soup = BeautifulSoup(response.text, 'html.parser') images = soup.find_all('img') # 或者寻找特定链接 links = soup.find_all('a', {'href': lambda x: x and x.startswith('http')}) ``` 4. **下载素材**:对于找到的图片链接,使用`response.content`或`response.url`,结合`open()`函数保存到本地文件系统。 ```python for img in images: image_url = img['src'] with open(image_url.split('/')[-1], 'wb') as f: response = requests.get(image_url) f.write(response.content) ``` 5. **处理异常**:记得捕获可能出现的异常,比如网络错误或权限问题。 6. **遵守法规**:在进行爬虫操作时,务必遵守网站的robots.txt规则,并尊重版权,不要无授权抓取他人的私人信息或商业机密。 **
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值