Skip to content

YJY-XYYC/webCrawler

Repository files navigation

webCrawler

项目简介

该项目是一个功能完善的词云图生成器,支持自定义形状、多种参数配置、实时预览、文本分析和网页爬取,适用于市场调研、数据分析等场景的文本可视化工具。

功能特性

🎨 核心功能

  • 多种形状支持:内置8种形状模板(矩形、圆形、心形、星形、云朵、菱形、三角形、椭圆),支持自定义形状图片上传
  • 丰富的文本输入方式:直接文本输入、从文件导入、网页内容爬取
  • 强大的文本分析:中文分词、词性分析、词语选择与过滤
  • 高度可定制:图片尺寸、字体大小、颜色方案、背景设置等多种参数调节
  • 实时预览:生成过程可视化,支持放大缩小操作
  • 多分辨率导出:支持1x、2x、3x、4x分辨率图片导出

🔧 技术特性

  • 现代化GUI界面:使用tkinter构建直观易用的图形界面
  • 智能网页爬取:支持登录验证、内容展开、智能内容提取
  • 高性能处理:多线程处理,避免界面卡顿
  • 灵活配置:通过配置文件和GUI界面双重方式调整参数

技术栈

  • 核心语言:Python 3.8+
  • 主要依赖
    • wordcloud - 词云生成核心库
    • jieba - 中文分词库
    • Pillow - 图像处理库
    • numpy - 数值计算库
    • DrissionPage - 网页爬取库

安装步骤

1. 克隆仓库

git clone git@github.com:YJY-XYYC/webCrawler.git
cd webCrawler

2. 安装依赖

pip install -r requirements.txt

3. 运行程序

python wordcloud_generator.py

使用方法

基本流程

  1. 输入文本:在文本输入框中直接输入文本,或从文件导入,或通过网页爬取
  2. 选择形状:从内置形状模板中选择,或上传自定义形状图片
  3. 配置参数:调整图片尺寸、字体大小、颜色方案等参数
  4. 生成词云:点击"生成词云图"按钮
  5. 预览效果:在右侧预览区域查看效果,可放大缩小
  6. 保存图片:调整导出分辨率,点击"保存图片"按钮

网页爬取使用

  1. 点击"爬取网页"按钮
  2. 输入网页URL
  3. 根据需要选择登录方式(无需登录/手动登录/Cookie登录)
  4. 点击"开始爬取"按钮
  5. 等待爬取完成,选择要提取的内容区域
  6. 点击"导入文本"按钮将内容导入到主界面

文本分析使用

  1. 输入或导入文本后,点击"分析文本"按钮
  2. 在弹出的对话框中查看词语分析结果
  3. 按词性筛选和选择词语
  4. 点击"确认选择"按钮使用选中的词语生成词云

项目结构

webCrawler/
├── 形状素材/           # 自定义形状图片
│   ├── 人头男.png
│   ├── 单人学士001.png
│   ├── 单人学士002.png
│   ├── 单人学士003.png
│   └── 双人学士.png
├── .gitignore         # Git忽略文件
├── LICENSE            # 许可证文件
├── README.md          # 项目说明文档
├── requirements.txt   # 依赖管理文件
├── wordcloud_config.json  # 配置文件
└── wordcloud_generator.py # 主程序文件

配置说明

项目使用 wordcloud_config.json 文件存储默认配置参数:

  • width - 图片宽度(默认800)
  • height - 图片高度(默认600)
  • max_words - 最大词数量(默认200)
  • min_font - 最小字体大小(默认10)
  • max_font - 最大字体大小(默认104)
  • margin - 词间距(默认2)
  • prefer_horizontal - 横向词比例(默认0.9)
  • bg_color - 背景颜色(默认#ffffff)
  • transparent - 是否透明背景(默认false)
  • color_scheme - 颜色方案(默认随机配色)
  • custom_colors - 自定义颜色列表
  • font - 字体(默认Microsoft YaHei)
  • stopwords - 停用词列表
  • export_scale - 导出分辨率(默认1x)
  • shape - 默认形状(默认自定义)

注意事项

  1. 网页爬取

    • 法律合规:本项目涉及的网络爬虫功能仅供教学和学习使用,使用时请确保遵守相关法律法规,尊重网站的robots.txt规则,不要对网站造成过度访问压力
    • 部分网站可能有反爬措施,可能导致爬取失败
    • 爬取需要安装DrissionPage库
    • 复杂网站可能需要手动登录
  2. 形状图片

    • 自定义形状图片建议使用白色背景、黑色前景的图片
    • 图片分辨率不宜过高,以免影响生成速度
  3. 性能优化

    • 文本内容不宜过长,建议控制在10000字以内
    • 最大词数量建议设置在50-300之间
  4. 常见问题

    • 若出现中文乱码,检查系统是否安装了指定字体
    • 若爬取失败,检查网络连接和网站访问权限

许可证

本项目采用 MIT 许可证,详见 LICENSE 文件。

贡献

欢迎提交 Issue 和 Pull Request 来改进这个项目!

联系方式

如有问题或建议,请联系项目维护者。


版本:v1.0.0 更新日期:2026-04-18

About

该项目是一个功能完善的词云图生成器,支持自定义形状、多种参数配置、实时预览、文本分析和网页爬取,适用于市场调研、数据分析等场景的文本可视化工具。

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages