怎么使用scrapy爬取boss直聘上的数据详解
时间: 2024-06-09 21:10:47 浏览: 199
使用Scrapy抓取职位招聘数据-爬虫python代码
5星 · 资源好评率100%
使用 Scrapy 爬取Boss直聘上的数据可以分为以下几个步骤:
1. 创建 Scrapy 项目
在命令行中输入以下命令来创建一个新的 Scrapy 项目:
```
scrapy startproject bosszp
```
其中 `bosszp` 是项目的名称,可以自行更改。
2. 创建爬虫
在项目的根目录下,使用以下命令来创建一个新的爬虫:
```
scrapy genspider bosszp_spider zhipin.com
```
其中 `bosszp_spider` 是爬虫的名称,`zhipin.com` 是需要爬取的网站的域名。这里以 `zhipin.com` 为例,实际使用时需要根据需要爬取的网站进行更改。
3. 编写爬虫代码
打开 `bosszp_spider.py` 文件,编写爬虫代码。以下是一个示例代码:
```python
import scrapy
class BosszpSpider(scrapy.Spider):
name = 'bosszp_spider'
allowed_domains = ['zhipin.com']
start_urls = ['https://www.zhipin.com/c101020100/']
def parse(self, response):
job_list = response.xpath('//div[@class="job-list"]//ul/li')
for job in job_list:
item = {}
item['job_title'] = job.xpath('.//div[@class="job-title"]/text()').get()
item['salary'] = job.xpath('.//span[@class="red"]/text()').get()
item['company'] = job.xpath('.//div[@class="company-text"]/h3/a/text()').get()
yield item
```
在这个示例代码中,我们首先指定了爬虫的名称、允许爬取的域名和起始 URL。然后在 `parse` 方法中,我们使用 XPath 选择器来提取每个职位的标题、薪资和公司名称,并将结果保存在 `item` 对象中,并使用 `yield` 关键字将 `item` 对象返回。
4. 运行爬虫
在命令行中进入项目的根目录,使用以下命令来运行爬虫:
```
scrapy crawl bosszp_spider -o data.json
```
其中 `bosszp_spider` 是爬虫的名称,`data.json` 是保存结果的文件名。运行完毕后,程序将会自动在当前目录下生成一个 `data.json` 文件,其中包含了爬取的数据。
注意:在运行爬虫之前,需要先安装好 Scrapy 和其他必要的依赖库。
阅读全文