Python爬虫初试

在Python中,我们可以使用一些强大的库来编写一个功能强大的爬虫,

Python

首先安装必要的库(如果尚未安装)

pip install requests beautifulsoup4

python 复制代码
import requests
from bs4 import BeautifulSoup
import os

def download_images(url, save_dir='images'):
    # 发送GET请求获取网页内容
    response = requests.get(url)
    
    # 检查请求是否成功
    if response.status_code != 200:
        print(f"请求失败: {response.status_code}")
        return
    
    # 使用BeautifulSoup解析HTML
    soup = BeautifulSoup(response.text, 'html.parser')
    
    # 查找所有的img标签,通常包含图片的URL
    img_tags = soup.find_all('img')

    # 保存图片到指定目录
    if not os.path.exists(save_dir):
        os.makedirs(save_dir)

    for img_tag in img_tags:
        img_url = img_tag['src']  # 获取图片链接
        img_name = os.path.join(save_dir, img_url.split('/')[-1])  # 构建文件名

        # 下载图片
        with open(img_name, 'wb') as f:
            img_response = requests.get(img_url, stream=True)
            for chunk in img_response.iter_content(1024):
                f.write(chunk)

    print(f"已下载{len(img_tags)}张图片到'{save_dir}'目录")

使用爬虫

target_url = "http://example.com" # 替换为你想要抓取图片的网站

download_images(target_url)

定义了一个函数download_images,它接受一个URL作为参数,然后找到页面上的所有图片,并将它们下载到指定的目录。为了增强爬虫功能,你可以考虑添加异常处理、代理支持、反爬虫机制、数据提取(如文本、表格等)、以及使用更复杂的库如Scrapy进行更深度的数据抓取。

相关推荐
CoderIsArt1 小时前
C#中UI 线程与 Dispatcher
开发语言·ui·c#
AI情绪识别开源3 小时前
检信 ALLEMOTION OS 加密打包可执行程序 — 全面测试报告版本: v1.3功能测试 / 性能测试 /
开发语言·数据结构·人工智能·功能测试
lupai4 小时前
手机在网状态接口实测效果与质量评估
大数据·python·智能手机·api接口
「QT(C++)开发工程师」4 小时前
C++ auto 用法详解
开发语言·c++
OPEN-F4 小时前
C++STL教程:容器适配器与实用工具
开发语言·c++
yaoxin5211235 小时前
507. Java 反射 - 在 BeanFactory 中实现依赖注入
java·开发语言
OPEN-F5 小时前
C++模板教程:变参模板、折叠表达式与SFINAE
java·开发语言·c++
有点。5 小时前
C++二叉搜索树进阶
开发语言·c++
HugoStudio_SWAN5 小时前
【擦除重绘】C++ 控制台动画:弹跳 Logo DVD 屏保效果
开发语言·c++·学习·程序人生