You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
3 weeks ago | |
|---|---|---|
| .. | ||
| src/main/java/com/example | 3 weeks ago | |
| target | 3 weeks ago | |
| README.md | 2 months ago | |
| bigdata_jobs.csv | 2 months ago | |
| jsoup-1.17.2.jar | 2 months ago | |
| pom.xml | 2 months ago | |
| 前程无忧爬虫_jobs.csv | 2 months ago | |
| 智联招聘爬虫_jobs.csv | 2 months ago | |
| 模拟数据爬虫_jobs.csv | 2 months ago | |
README.md
大数据招聘爬虫项目
项目简介
这是一个适合新手学习的大数据招聘信息爬虫项目,使用Java语言开发,实现了爬取、处理和存储招聘信息的完整流程。
技术栈
- 开发语言: Java 11+
- 爬虫框架: Jsoup 1.17.2
- 构建工具: Maven 3.6+
- 数据存储: CSV文件
项目结构
bigdata-job-crawler/
├── src/
│ ├── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── example/
│ │ │ ├── crawler/
│ │ │ │ └── JobCrawler.java # 爬虫核心类
│ │ │ ├── processor/
│ │ │ │ └── DataProcessor.java # 数据处理类
│ │ │ ├── storage/
│ │ │ │ └── DataStorage.java # 数据存储类
│ │ │ └── Main.java # 主类
│ │ └── resources/
├── pom.xml # Maven配置文件
├── bigdata_jobs.csv # 爬取结果文件
└── README.md # 项目说明
环境要求
- JDK 11或更高版本
- Maven 3.6或更高版本
安装步骤
1. 安装JDK
从Oracle官网下载并安装JDK 11+,配置JAVA_HOME环境变量。
2. 安装Maven
从Apache官网下载并安装Maven 3.6+,配置MAVEN_HOME环境变量。
3. 验证环境
java -version
mvn -version
使用方法
1. 编译项目
mvn clean compile
2. 运行项目
# 方法1:使用java命令直接运行
java -cp "target/classes;C:\Users\lenovo\.m2\repository\org\jsoup\jsoup\1.17.2\jsoup-1.17.2.jar" com.example.Main
# 方法2:使用Maven exec插件(需要先在pom.xml中配置)
mvn exec:java -Dexec.mainClass="com.example.Main"
3. 查看结果
程序运行后,会在项目根目录生成 bigdata_jobs.csv 文件,包含爬取的职位信息。
项目说明
核心类介绍
1. JobCrawler.java
负责爬取招聘信息,目前使用模拟数据进行演示。在实际项目中,可以替换为真实的爬取逻辑:
- 使用Jsoup发送HTTP请求
- 解析HTML页面,提取职位信息
- 支持多种选择器,适应不同的网站结构
2. DataProcessor.java
负责处理爬取的数据:
- 清理空白字符
- 标准化数据格式
- 数据验证
3. DataStorage.java
负责将处理后的数据保存为CSV文件:
- 生成CSV格式文件
- 支持自定义文件路径
- 使用缓冲写入,提高性能
4. Main.java
程序的主入口,协调整个爬虫流程:
- 调用爬虫获取数据
- 调用处理器清洗数据
- 调用存储器保存数据
当前功能
- ✅ 爬取大数据相关职位信息
- ✅ 数据清洗和处理
- ✅ 数据存储为CSV文件
- ✅ 支持多种职位信息字段(职位名称、薪资、公司、地点、经验、学历)
注意事项
- 模拟数据: 当前版本使用模拟数据进行演示,实际项目中需要替换为真实的爬取逻辑
- 反爬机制: 实际爬取时需要注意网站的反爬机制,建议:
- 添加合理的请求延迟
- 使用代理IP池
- 设置合适的User-Agent
- 法律合规: 爬取数据时请遵守相关法律法规和网站的使用条款
扩展建议
- 支持更多网站: 添加前程无忧、猎聘网等招聘平台的支持
- 数据可视化: 使用JFreeChart等库生成图表
- 定时任务: 使用Quartz实现定时爬取
- 数据库存储: 使用MySQL等数据库替代CSV文件
- 数据分析: 添加薪资分析、技能需求分析等功能
常见问题
Q: 如何修改爬取的职位数量?
A: 在JobCrawler.java中修改循环次数或条件。
Q: 如何添加新的招聘网站?
A: 在JobCrawler.java中添加新的爬取方法,或修改现有方法以支持新的URL。
Q: CSV文件在哪里?
A: 默认在项目根目录下,文件名为 bigdata_jobs.csv。
Q: 如何修改保存路径?
A: 在Main.java中修改 filePath 变量的值。
学习资源
许可证
本项目仅供学习交流使用。
联系方式
如有问题或建议,欢迎交流讨论。
祝您学习愉快!