Skip to content

settings_dict = dict(s.split('=') for s in settings_arguments.pop('setting')) ValueError: dictionary update sequence element #1 has length 4; 2 is required #258

@1yzz

Description

@1yzz

Describe the bug

500 (INTERNAL SERVER ERROR): 500 Internal Server Error: The server encountered an internal error and was unable to complete your request. Either the server is overloaded or there is an error in the application.

Traceback (most recent call last):
  File "/root/env3.9/lib/python3.9/site-packages/flask/app.py", line 2051, in wsgi_app
    response = self.full_dispatch_request()
  File "/root/env3.9/lib/python3.9/site-packages/flask/app.py", line 1501, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/root/env3.9/lib/python3.9/site-packages/flask/app.py", line 1499, in full_dispatch_request
    rv = self.dispatch_request()
  File "/root/env3.9/lib/python3.9/site-packages/flask/app.py", line 1485, in dispatch_request
    return self.ensure_sync(self.view_functions[rule.endpoint])(**req.view_args)
  File "/root/env3.9/lib/python3.9/site-packages/flask/views.py", line 83, in view
    return self.dispatch_request(*args, **kwargs)
  File "/root/env3.9/lib/python3.9/site-packages/scrapydweb/views/operations/schedule.py", line 78, in dispatch_request
    self.query_task()
  File "/root/env3.9/lib/python3.9/site-packages/scrapydweb/views/operations/schedule.py", line 105, in query_task
    settings_dict = dict(s.split('=') for s in settings_arguments.pop('setting'))
ValueError: dictionary update sequence element #1 has length 4; 2 is required

  • OS: Linux-3.10.0-1160.25.1.el7.x86_64-x86_64-with-glibc2.17
  • Python: 3.9.21
  • ScrapydWeb: 1.5.2
  • LogParser: 0.8.4
  • Scrapyd servers amount: 2
  • User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36
  • Request Method: GET
  • Request Args: ImmutableMultiDict([('task_id', '24')])
  • Form Data: ImmutableMultiDict([])
  • Files Data: ImmutableMultiDict([])
  • Request Referer: http://192.168.5.122:5000/1/tasks/

** To Reproduce**

-setting=mongourl://bcss?params1=sss&param2=xxx

The = symbol

Expected behavior
A clear and concise description of what you expected to happen.

Logs
Add logs of ScrapydWeb and Scrapyd (optional) when reproducing the bug.
(It's recommended to run ScrapydWeb with argument '--verbose' if its version >= 1.0.0)

Screenshots
If applicable, add screenshots to help explain your problem.

Environment (please complete the following information):

  • Operating system: [e.g. Win 10, macOS 10.14, Ubuntu 18, centOS 7.6, Debian 9.6 or Fedora 29]
  • Python version: [e.g. 3.6 or 3.12]
  • ScrapydWeb version: [e.g. 1.5.0 or latest code on GitHub]
  • ScrapydWeb related settings [e.g. 'ENABLE_AUTH = True']
  • Scrapyd version: [e.g. 1.2.1 or latest code on GitHub]
  • Scrapyd amount [e.g. 1 or 5]
  • Scrapy version: [e.g. 1.8.0, 2.0.0 or latest code on GitHub]
  • Browser [e.g. Chrome 71, Firefox 64 or Safari 12]

Additional context
Add any other context about the problem here.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions