GPT答: |
7i24.cn
|
下面是一个使用Scrapy框架爬取boss直聘网站上Java程序员信息的示例代码:
```python
import scrapy
class BossZhipinSpider(scrapy.Spider):
name = 'boss_zhipin'
start_urls = ['https://www.zhipin.com/c101010100-p100109/?page=1']
def parse(self, response):
# 解析当前页面的职位信息
job_list = response.xpath('//div[@class="job-list"]/ul/li')
for job in job_list:
item = {}
item['title'] = job.xpath('.//div[@class="info-primary"]/h3/a/div/text()').get()
item['salary'] = job.xpath('.//span[@class="red"]/text()').get()
yield item
# 获取下一页的URL并发送请求
next_page_url = response.css('a.next::attr(href)').get()
if next_page_url:
yield scrapy.Request(url=response.urljoin(next_page_url), callback=self.parse)
```
这个爬虫首先定义了`start_urls`,即要爬取的初始URL。然后在`parse`方法中,使用XPath和CSS选择器解析页面中的职位信息,并将结果保存到字典对象中。最后,通过找到下一页按钮并构造新请求来实现翻页功能。
你可以将以上代码保存为一个Python文件(例如 `boss_zhipin_spider.py`),然后在命令行中运行以下命令启动爬虫:
```
scrapy runspider boss_zhipin_spider.py -o jobs.json
```
该命令会将结果保存到名为 `jobs.json` 的JSON文件中。你可以根据需要修改代码来进一步提取其他信息或者保存到其他格式的文件中。
|