通过网站启动爬虫的两种方法

一.向终端发送指令`
未测试

import os
import oscommand =’输入的命令’
os.system(command)

二.通过http请求
已测试
1.需要安装scrapyd ,scrapy-client

pip install scrapyd
pip install scrapyd-client==1.1.0   版本号要与scrapyd 一致

2.配置scrapy项目
打开scrapy.cfg文件
修改如下图
通过网页开启scrapy爬虫,scrapy  dganjo结合-LMLPHP

3.linux
直接输入 scrapyd-deploy 检测 上传工具是否能运行

windows
python环境里scripts文件里会生成scrapyd-deploy
我们需要创建一个scrapyd-deploy.bat文件,在里面加入下面语句

@echo off
"C:\Users\qianzhen\Envs\scrapySpider\Scripts\python.exe"
"C:\Users\qianzhen\Envs\scrapySpider\Scripts\scrapyd-deploy" %1 %2 %3 %4 %5 %6 %7 %8 %9

注意:
1.两个路径用空格隔开
2.第一个路径填写python.exe的路径
3.第二个填写scrapyd-deploy文件的路径

输入scrapyd-deploy 检测 上传工具是否能运行
显示Unknown target: default
运行成功

4.上传项目

  1. 启动scrapyd 在终端输入scrapyd命令 不要关闭
  2. 在项目目录下终端输入scrapyd-deploy 部署名称 -p 项目名称
  3. 返回json数据 出现 status:ok项目上传成功
    若上传失败,关闭scraped进程,删除上传项目生成的文件,重新上传
  4. 输入url,查看网页
    通过网页开启scrapy爬虫,scrapy  dganjo结合-LMLPHP5. http://localhost:6800/listprojects.json 查看爬虫项目
    6.启动爬虫
    http://localhost:6800/scedule.json
    post请求
    参数data={"project":项目名称,"spider":爬虫名称}

form访问

<form action='http://localhost:6800/scedule.json?project=项目名称&spider=爬虫名称' method='post'>
<button value='开始爬虫'/>
</form>

ajax请求

 $.ajax({
       url:'  http://localhost:6800/scedule.json',
       type:"POST",
       data: {
               "project":'项目名称',
               "spider":'爬虫名称'
       }

7.获取爬虫运行状态
访问 http://127.0.0.1:6800/listjobs.json?project=myproject

01-13 20:36