python3简单爬取妹纸图网站图片

简单写了个爬取妹纸图网站的图片,f12如图下,找到url和max两个关键的参数,修改__main__的下的参数。(没下载一张图片有1秒的休眠)

在这里插入图片描述

import requests
import os
import time


def mkdir(path):
    paths = path.split('/')
    if len(paths) != 3:
        print('该路径错误! '+path)
        return
    a=path.rindex("/");
    dir =path[0:a];
    if os.path.exists(dir) == False:
        os.makedirs(dir)
def downIamge(path,content):
    with open(path, "wb")as f:
        f.write(content)
def pareUrl(url):
    headers = {
        "Host": "i3.mmzztt.com"
        , "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:74.0) Gecko/20100101 Firefox/74.0"
        , "Accept": "image/webp,*/*"
        , "Accept-Language": "zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2"
        , "Accept-Encoding": "gzip, deflate, br"
        , "Connection": "keep-alive"
        , "Referer": "https://www.mzitu.com/222376"
        , "Cache-Control": "max-age=0"
        , "If-Modified-Since": "Sat, 08 Feb 2020 13:08:27 GMT"
        , "If-None-Match": "5e3eb2cb-1a360"
    }
    resp = requests.get(url, data={}, headers=headers)
    resp.encoding = 'utf-8'
    print(resp)
    start = url.index('/', 10);
    filePath = url[start + 1:]
    print(filePath)
    # 创建文件夹
    mkdir(filePath)
    # 下载图片
    downIamge(filePath, resp.content)

def urlAndMax(url,max):
    i = 1
    index = url.rindex('/')
    surl = url[0:index + 4]
    eurl = url[index + 4 + 2:]
    while i <= max:
        param = ""
        if i < 10:
            param += "0" + str(i)
        else:
            param += str(i)
        url = surl + param + eurl
        print("下载地址:" + url)
        #休眠1秒
        time.sleep(1)
        pareUrl(url)
        i += 1
if __name__ == '__main__':
    url = "https://i3.mmzztt.com/2014/05/20140526mm01.jpg"
    max = 10
    urlAndMax(url,max)

路漫漫其修远兮

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要使用Python爬取网站图片,可以使用requests和beautifulsoup4库进行网页爬取和解析。具体步骤如下: 1. 使用requests库获取网页内容: ```python import requests url = 'http://example.com' response = requests.get(url) ``` 2. 使用beautifulsoup4库解析网页内容,并找到所有图片标签: ```python from bs4 import BeautifulSoup soup = BeautifulSoup(response.text, 'html.parser') img_tags = soup.find_all('img') ``` 3. 遍历所有图片标签,获取图片链接,并下载图片到本地: ```python import os # 创建文件夹用于保存图片 if not os.path.exists('images'): os.makedirs('images') for img in img_tags: img_url = img['src'] img_name = img_url.split('/')[-1] # 通过链接获取图片名 # 下载图片到本地 with open(f'images/{img_name}', 'wb') as f: f.write(requests.get(img_url).content) ``` 注意:在爬取网站图片时,需要注意网站的版权问题和爬虫协议,避免侵犯他人权益。 ### 回答2: 要使用Python爬取网站图片,首先需要安装 `requests` 和 `BeautifulSoup` 两个库。 以下是基本的爬取图片的步骤: 1. 导入所需库: ```python import requests from bs4 import BeautifulSoup ``` 2. 使用 `requests` 发送GET请求并获取网页内容: ```python url = 'http://example.com' # 替换成目标网站的URL response = requests.get(url) ``` 3. 使用 `BeautifulSoup` 解析网页内容: ```python soup = BeautifulSoup(response.text, 'html.parser') ``` 4. 找到包含图片的标签或元素,例如 `<img>` 标签: ```python image_tags = soup.find_all('img') ``` 5. 遍历找到的图片标签,获取图片URL,并保存图片: ```python for tag in image_tags: image_url = tag.get('src') # 获取图片URL img_data = requests.get(image_url).content # 使用requests获取图片二进制数据 with open('image.jpg', 'wb') as f: f.write(img_data) # 将图片数据写入到文件 ``` 注意,以上代码仅为示例,实际应用中可能需要根据目标网站的具体结构进行适当的调整。 此外,还可以使用其他库如 `urllib` 或 `Scrapy` 来实现网站图片爬取。 ### 回答3: 要爬取网站图片,首先需要安装并引入相应的库,例如requests库、BeautifulSoup库和urllib库。下面是一个爬取网站图片的基本步骤: 1. 导入相关库: ``` import requests from bs4 import BeautifulSoup import urllib ``` 2. 通过requests库发送HTTP请求获取网页的内容: ``` url = "网站URL" headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'} response = requests.get(url, headers=headers) ``` 3. 使用BeautifulSoup库解析网页内容: ``` soup = BeautifulSoup(response.text, "html.parser") ``` 4. 找到网页中图片的标签(一般是`<img>`标签),通过BeautifulSoup库提供的方法获取图片的URL: ``` image_tags = soup.find_all("img") for image_tag in image_tags: image_url = image_tag["src"] print(image_url) ``` 5. 下载图片: ``` urllib.request.urlretrieve(image_url, "保存路径/文件名") ``` 以上是简单示例,实际爬取过程中还需考虑网页加载方式(AJAX、动态加载等)、反爬机制和异常处理等问题。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值