python中用Scrapy实现定时爬虫的实例讲解

 更新时间:2021年01月18日 14:33:04   作者:宋宋大人  
在本篇文章里小编给大家整理的是一篇关于python中用Scrapy实现定时爬虫的实例讲解内容,有兴趣的朋友们可以学习下。

一般网站发布信息会在具体实现范围内发布,我们在进行网络爬虫的过程中,可以通过设置定时爬虫,定时的爬取网站的内容。使用python爬虫框架Scrapy框架可以实现定时爬虫,而且可以根据我们的时间需求,方便的修改定时的时间。

1、Scrapy介绍

Scrapy是python的爬虫框架,用于抓取web站点并从页面中提取结构化的数据。任何人都可以根据需求方便的修改。Scrapy用途广泛,可以用于数据挖掘、监测和自动化测试。

2、使用Scrapy框架定时爬取

import time
from scrapy import cmdline
def doSth():
  # 把爬虫程序放在这个类里 zhilian_spider 是爬虫的name
  cmdline.execute('scrapy crawl zhilian_spider'.split())
# 想几点更新,定时到几点
def time_ti(h=17, m=54):
  while True:
    now = datetime.datetime.now()
    # print(now.hour, now.minute)
    if now.hour == h and now.minute == m:
      doSth()
    # 每隔60秒检测一次
    time.sleep(60)
time_ti()

3、更简单的写法

import time
import sys
import os
import datetime
def Dingshi():
while True:
os.system("scrapy crawl lcp")#lcp是我们爬虫的代码名字哦
time.sleep(60)
Dingshi()

知识点扩展:

直接使用Timer类实例代码

import time
import os
while True:
 os.system("scrapy crawl News")
 time.sleep(86400) #每隔一天运行一次 24*60*60=86400s或者,使用标准库的sched模块
import sched
#初始化sched模块的scheduler类
#第一个参数是一个可以返回时间戳的函数,第二个参数可以在定时未到达之前阻塞。
schedule = sched.scheduler ( time.time, time.sleep )
#被周期性调度触发的函数
def func():
 os.system("scrapy crawl News")
def perform1(inc):
 schedule.enter(inc,0,perform1,(inc,))
 func() # 需要周期执行的函数
def mymain():
 schedule.enter(0,0,perform1,(86400,))
if __name__=="__main__":
 mymain()
 schedule.run() # 开始运行,直到计划时间队列变成空为止关于cmd的实现方法,本人在单次执行爬虫程序时使用的是 
cmdline.execute("scrapy crawl News".split())但可能因为cmdline是scrapy模块中自带的,所以定时执行时只能执行一次就退出了。

到此这篇关于python中用Scrapy实现定时爬虫的实例讲解的文章就介绍到这了,更多相关python中使用Scrapy实现定时爬虫内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Pytorch+PyG实现GIN过程示例详解

    Pytorch+PyG实现GIN过程示例详解

    这篇文章主要为大家介绍了Pytorch+PyG实现GIN过程示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-04-04
  • python 将大文件切分为多个小文件的实例

    python 将大文件切分为多个小文件的实例

    今天小编就为大家分享一篇python 将大文件切分为多个小文件的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01
  • python 申请内存空间,用于创建多维数组的实例

    python 申请内存空间,用于创建多维数组的实例

    今天小编就为大家分享一篇python 申请内存空间,用于创建多维数组的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12
  • python3.0 模拟用户登录,三次错误锁定的实例

    python3.0 模拟用户登录,三次错误锁定的实例

    下面小编就为大家带来一篇python3.0 模拟用户登录,三次错误锁定的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-11-11
  • Django和Flask框架优缺点对比

    Django和Flask框架优缺点对比

    这篇文章主要介绍了Django和Flask框架相关对比,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-10-10
  • Python函数的参数类型和使用技巧详解

    Python函数的参数类型和使用技巧详解

    这篇文章主要介绍了Python函数的参数类型和使用技巧详解,函数指通过专门的代码组织,用来实现特定功能的代码段,具有相对的独立性,可以被其他代码重复调用,需要的朋友可以参考下
    2023-08-08
  • python实现同一局域网下传输图片

    python实现同一局域网下传输图片

    这篇文章主要为大家详细介绍了python实现同一局域网下传输图片,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-03-03
  • 基于Python实现快递信息提取

    基于Python实现快递信息提取

    这篇文章主要为大家介绍了如何利用Python实现提取快递信息,文中的示例代码讲解详细,对我们学习Python有一定帮助,需要的可以参考一下
    2022-03-03
  • python opencv实现灰度图和彩色图的互相转换

    python opencv实现灰度图和彩色图的互相转换

    这篇文章主要给大家介绍了关于python opencv实现灰度图和彩色图的互相转换,文中通过实例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2022-01-01
  • Python操作MongoDb数据库流程详解

    Python操作MongoDb数据库流程详解

    这篇文章主要介绍了Python操作MongoDb数据库流程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-03-03

最新评论