crawlspider

简介: crawlspider

spider的子类,主要用于全站数据的爬取

使用

# 创建一个工程
scrapy startproject XXX

# 进工程路径
cd XXX

# 创建爬虫文件
scrapy genspider -t crawl XXX www.XXX.com

# 运行
scrapy crawl XXX

规则解析器遇到重复的会自动删掉,不需要手动

# 注意,该网站有反爬机制
import scrapy
from scrapy.linkextractors import LinkExtractor
from scrapy.spiders import CrawlSpider, Rule


class SunSpider(CrawlSpider):
    name = 'sun'
    start_urls = ['https://wz.sun0769.com/political/index/politicsNewest']

    # 在起始页面中提取符合规则的链接,然后对其调用parse——item解析
    rules = (
        # 提取的还是源文件,不是动态加载的
        # follow=True:可以将链接提取器到提取到的链接中,从而爬取整个页码;设为false只能提取起始页面中的内容
        Rule(LinkExtractor(allow=r'id=1&page=\d+'), callback='parse_item', follow=True),
    )

    def parse_item(self, response):
        print(response) #这里只能提取出html中有的两个链接
        # item = {}
        # #item['domain_id'] = response.xpath('//input[@id="sid"]/@value').get()
        # #item['name'] = response.xpath('//div[@id="name"]').get()
        # #item['description'] = response.xpath('//div[@id="description"]').get()
        # return item
目录
相关文章
|
3月前
|
算法 计算机视觉
【MATLAB 】 EEMD 信号分解+希尔伯特黄变换+边际谱算法
【MATLAB 】 EEMD 信号分解+希尔伯特黄变换+边际谱算法
195 0
|
3月前
|
Web App开发 Python
python自动更新chromedriver
python自动更新chromedriver
141 0
|
3月前
|
Web App开发
selenium使用的一些注意事项
selenium使用的一些注意事项
322 0
|
3月前
|
网络协议 Linux
clash端口问题
clash使用的注意事项
1337 0
|
开发者 黑灰产治理
专家博主最新专享福利上线!发文即得积分好礼!
最新专享福利上线!赢取海量积分兑换心仪礼品
549 0
|
3月前
社区活动礼品兑换攻略
社区活动礼品兑换攻略
1969 1
|
3月前
vscode中可能遇到的一些问题
vscode中可能遇到的一些问题
138 1
|
3月前
|
Windows
origin
origin使用
283 2
|
3月前
设置selenium默认下载位置
设置selenium默认下载位置
226 1
|
3月前
|
数据可视化 数据处理 Python
python处理NetCDF格式文件
python处理NetCDF格式文件
106 0
python处理NetCDF格式文件