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进行更深度的数据抓取。

相关推荐
南尘NCA8666几秒前
如何解决企业微信防封行业高封号率痛点
python·企业微信
楼田莉子1 分钟前
同步/异步日志系统:日志器管理器模块\全局接口\性能测试
linux·服务器·开发语言·c++·后端·设计模式
dyxal1 分钟前
内网 Windows 离线安装 uv:极速 Python 包管理器的部署实战
windows·python·uv
qq_654366983 分钟前
Vue 3 中集成 Three.js 场景的完整实践指南
jvm·数据库·python
人邮异步社区5 分钟前
文科生零基础学 Python 难吗?真不难,难的是找对书!
开发语言·python
qq_424098568 分钟前
JavaScript中箭头函数在类方法定义中的this绑定优势
jvm·数据库·python
2301_8038756111 分钟前
HTML怎么用Lawyer Zone对齐律所图_Lawyer专业主题图片布局
jvm·数据库·python
春栀怡铃声11 分钟前
【C++修仙录02】筑基篇:类和对象(上)
开发语言·c++·算法
Polar__Star16 分钟前
golang如何实现Trie前缀树_golang Trie前缀树实现解析
jvm·数据库·python
悟空爬虫-彪哥18 分钟前
2026 Python UI 框架选择指南:从 Streamlit 到 Pyside6 的四层体系
开发语言·python·ui