Python爬虫--使用scrapy框架(1)

1.安装scrapy

首先安装Scrapy框架,可以使用pip3 install scrapy,安装scrapy时会自动安装twisted,但是可能会安装不成功,可以下载一个你的python对应版本的twisted(可以去这个网站下载点击下载twisted),使用pip3来安装它,再使用pip3 install scrapy安装scrapy.

2.网页源码

使用scrapy爬取七月在线网站课程数据,我们先来看一下网页的源码:
这里写图片描述
截图中的红框1,2,3分别对应上面3门课程,红框4是1的子标签,下面我们用scrapy框架抓取该网页中的每门课程的名字和介绍以及开班时间,分别对应到3个红椭圆圈住的部分。

3.代码实现

import scrapy

class Spider(scrapy.Spider):
    name = "spider" #为该程序起个名字
    start_urls = ['https://www.julyedu.com/category/index',] #将要访问的url

    def parse(self, response):
        #用xpath查找出class="course_info_box"的dir标签,生成的是一个列表
        for julyedu_class in response.xpath('//div[@class="course_info_box"]'):
            #找到a标签下的h4标签的text内容,extract_first()表示找到第一个
            print(julyedu_class.xpath('a/h4/text()').extract_first())
            print(julyedu_class.xpath('a/p[@class="course-info-tip"][1]/text()').extract_first())
            print(julyedu_class.xpath('a/p[@class="course-info-tip info-time"][1]/text()').extract_first())
            print("~~~~~~~~~~~~~~~") #打印间隔,便于区分每门课程

其中的xpath可以通过选中标签,右键–>copy–>copy xpath来获得,如下图:
这里写图片描述

4.运行代码

打开windows的cmd命令行,执行runspider spider.py,其中spider.py是刚才程序保存的文件。
运行结果如下:
这里写图片描述

猜你喜欢

转载自blog.csdn.net/qq_16209077/article/details/80086638
今日推荐