scrapyd schedule.json setting 传入多个值问题


Posted in Javascript onAugust 07, 2019

使用案例:

import requests
adder='http://127.0.0.1:6800'
data = {
    'project':'v1',
    'version':'12379',
    'setting':['ROBOTSTXT_OBEY=True','CONCURRENT_REQUESTS=32']
}
resp = requests.post(adder,data=data)

问题解决思路:

版本1.2文档中:

◦setting (string, optional) - a Scrapy setting to use when running the spider

setting 是字符串,那么多个字符串该如何呢。

通过源码 site-packages/scrapyd/webservice.py

class Schedule(WsResource):
  def render_POST(self, txrequest):
    args = native_stringify_dict(copy(txrequest.args), keys_only=False)
    settings = args.pop('setting', [])
    settings = dict(x.split('=', 1) for x in settings)
    args = dict((k, v[0]) for k, v in args.items())
    project = args.pop('project')
    spider = args.pop('spider')
    version = args.get('_version', '')
    spiders = get_spider_list(project, version=version)
    if not spider in spiders:
      return {"status": "error", "message": "spider '%s' not found" % spider}
    args['settings'] = settings
    jobid = args.pop('jobid', uuid.uuid1().hex)
    args['_job'] = jobid
    self.root.scheduler.schedule(project, spider, **args)
    return {"node_name": self.root.nodename, "status": "ok", "jobid": jobid}

 可以发现 setting 在这里是list对象,且里面元素是字符,字符串必须包含=符号。

以此我们尝试传入setting:['DEBUG=True','HOST_NAME=axdda']

结果真的可以。对于比较复杂的设置,下次有需求再研究吧。

总结

以上所述是小编给大家介绍的scrapyd schedule.json setting 传入多个值问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
理解Javascript_13_执行模型详解
Oct 20 Javascript
js复制到剪切板的实例方法
Jun 28 Javascript
JSON格式化输出
Nov 10 Javascript
解决Jquery向页面append新元素之后事件的绑定问题
Mar 16 Javascript
js网页滚动条滚动事件实例分析
May 05 Javascript
require.js 加载 vue组件 r.js 合并压缩的实例
Oct 14 Javascript
JS实现禁止鼠标右键的功能
Oct 15 Javascript
Node.js连接MongoDB数据库产生的问题
Feb 08 Javascript
jquery animate动画持续运动的实例
Nov 29 jQuery
JavaScript实现秒杀时钟倒计时
Sep 29 Javascript
VUE异步更新DOM - 用$nextTick解决DOM视图的问题
Nov 06 Javascript
Vue实现购物车基本功能
Nov 08 Javascript
Node.js在图片模板上生成二维码图片并附带底部文字说明实现详解
Aug 07 #Javascript
微信小程序引入Vant组件库过程解析
Aug 06 #Javascript
Vue数据绑定实例写法
Aug 06 #Javascript
Vue代码整洁之去重方法整理
Aug 06 #Javascript
VUE写一个简单的表格实例
Aug 06 #Javascript
VUE前后端学习tab写法实例
Aug 06 #Javascript
Vue路由前后端设计总结
Aug 06 #Javascript
You might like
php实现源代码加密的方法
2015/07/11 PHP
php批量删除超链接的实现方法
2015/10/19 PHP
实例讲解如何在PHP的Yii框架中进行错误和异常处理
2016/03/17 PHP
Yii2.0 模态弹出框+ajax提交表单
2016/05/22 PHP
[原创]php token使用与验证示例【测试可用】
2017/08/30 PHP
php中文语义分析实现方法示例
2019/09/28 PHP
javascript 支持链式调用的异步调用框架Async.Operation
2009/08/04 Javascript
jquery实现焦点图片随机切换效果的方法
2015/03/12 Javascript
安装使用Mongoose配合Node.js操作MongoDB的基础教程
2016/03/01 Javascript
js仿百度登录页实现拖动窗口效果
2016/03/11 Javascript
vue.js学习笔记之绑定style样式和class列表
2016/10/31 Javascript
基于javascript的异步编程实例详解
2017/04/10 Javascript
jQuery实现动态生成表格并为行绑定单击变色动作的方法
2017/04/17 jQuery
详解vue使用$http服务端收不到参数
2019/04/19 Javascript
vue实现滑动到底部加载更多效果
2020/10/27 Javascript
2019最新21个MySQL高频面试题介绍
2020/02/06 Javascript
Python常用模块介绍
2014/11/21 Python
Python是编译运行的验证方法
2015/01/30 Python
python使用PyGame绘制图像并保存为图片文件的方法
2015/04/24 Python
利用Python3分析sitemap.xml并抓取导出全站链接详解
2017/07/04 Python
Python中pillow知识点学习
2018/04/30 Python
Python查看微信撤回消息代码
2018/06/07 Python
Python 运行 shell 获取输出结果的实例
2019/01/07 Python
新年快乐! python实现绚烂的烟花绽放效果
2019/01/30 Python
用Python实现最速下降法求极值的方法
2019/07/10 Python
tornado+celery的简单使用详解
2019/12/21 Python
Harrods美国:英国最大的百货公司
2018/11/04 全球购物
妇科医生自荐信
2013/11/05 职场文书
2014年庆元旦活动方案
2014/02/15 职场文书
幼儿园家长评语大全
2014/04/16 职场文书
2015暑假假期总结
2015/07/13 职场文书
《藏戏》教学反思
2016/02/23 职场文书
MySQL sql_mode修改不生效的原因及解决
2021/05/07 MySQL
Nginx+Tomcat负载均衡集群的实现示例
2021/10/24 Servers
js不常见操作运算符总结
2021/11/20 Javascript
Python爬虫网络请求之代理服务器和动态Cookies
2022/04/12 Python