198 KiB
Release notes
Scrapy 2.5.1 (2021-10-05)
Security bug fix:
If you use :class:`~scrapy.downloadermiddlewares.httpauth.HttpAuthMiddleware` (i.e. the http_user and http_pass spider attributes) for HTTP authentication, any request exposes your credentials to the request target.
System Message: ERROR/3 (<stdin>, line 13); backlink
Unknown interpreted text role "class".
To prevent unintended exposure of authentication credentials to unintended domains, you must now additionally set a new, additional spider attribute, http_auth_domain, and point it to the specific domain to which the authentication credentials must be sent.
If the http_auth_domain spider attribute is not set, the domain of the first request will be considered the HTTP authentication target, and authentication credentials will only be sent in requests targeting that domain.
If you need to send the same HTTP authentication credentials to multiple domains, you can use :func:`w3lib.http.basic_auth_header` instead to set the value of the Authorization header of your requests.
System Message: ERROR/3 (<stdin>, line 28); backlink
Unknown interpreted text role "func".
If you really want your spider to send the same HTTP authentication credentials to any domain, set the http_auth_domain spider attribute to None.
Finally, if you are a user of scrapy-splash, know that this version of Scrapy breaks compatibility with scrapy-splash 0.7.2 and earlier. You will need to upgrade scrapy-splash to a greater version for it to continue to work.
Scrapy 2.5.0 (2021-04-06)
Highlights:
Official Python 3.9 support
Experimental :ref:`HTTP/2 support <http2>`
System Message: ERROR/3 (<stdin>, line 53); backlink
Unknown interpreted text role "ref".
New :func:`~scrapy.downloadermiddlewares.retry.get_retry_request` function to retry requests from spider callbacks
System Message: ERROR/3 (<stdin>, line 55); backlink
Unknown interpreted text role "func".
New :class:`~scrapy.signals.headers_received` signal that allows stopping downloads early
System Message: ERROR/3 (<stdin>, line 58); backlink
Unknown interpreted text role "class".
New :class:`Response.protocol <scrapy.http.Response.protocol>` attribute
System Message: ERROR/3 (<stdin>, line 61); backlink
Unknown interpreted text role "class".
Deprecation removals
Removed all code that :ref:`was deprecated in 1.7.0 <1.7-deprecations>` and had not :ref:`already been removed in 2.4.0 <2.4-deprecation-removals>`. (:issue:`4901`)
System Message: ERROR/3 (<stdin>, line 66); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 66); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 66); backlink
Unknown interpreted text role "issue".
Removed support for the SCRAPY_PICKLED_SETTINGS_TO_OVERRIDE environment variable, :ref:`deprecated in 1.8.0 <1.8-deprecations>`. (:issue:`4912`)
System Message: ERROR/3 (<stdin>, line 70); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 70); backlink
Unknown interpreted text role "issue".
Deprecations
The :mod:`scrapy.utils.py36` module is now deprecated in favor of :mod:`scrapy.utils.asyncgen`. (:issue:`4900`)
System Message: ERROR/3 (<stdin>, line 77); backlink
Unknown interpreted text role "mod".
System Message: ERROR/3 (<stdin>, line 77); backlink
Unknown interpreted text role "mod".
System Message: ERROR/3 (<stdin>, line 77); backlink
Unknown interpreted text role "issue".
New features
Experimental :ref:`HTTP/2 support <http2>` through a new download handler that can be assigned to the https protocol in the :setting:`DOWNLOAD_HANDLERS` setting. (:issue:`1854`, :issue:`4769`, :issue:`5058`, :issue:`5059`, :issue:`5066`)
System Message: ERROR/3 (<stdin>, line 84); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 84); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 84); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 84); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 84); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 84); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 84); backlink
Unknown interpreted text role "issue".
The new :func:`scrapy.downloadermiddlewares.retry.get_retry_request` function may be used from spider callbacks or middlewares to handle the retrying of a request beyond the scenarios that :class:`~scrapy.downloadermiddlewares.retry.RetryMiddleware` supports. (:issue:`3590`, :issue:`3685`, :issue:`4902`)
System Message: ERROR/3 (<stdin>, line 89); backlink
Unknown interpreted text role "func".
System Message: ERROR/3 (<stdin>, line 89); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 89); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 89); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 89); backlink
Unknown interpreted text role "issue".
The new :class:`~scrapy.signals.headers_received` signal gives early access to response headers and allows :ref:`stopping downloads <topics-stop-response-download>`. (:issue:`1772`, :issue:`4897`)
System Message: ERROR/3 (<stdin>, line 95); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 95); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 95); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 95); backlink
Unknown interpreted text role "issue".
The new :attr:`Response.protocol <scrapy.http.Response.protocol>` attribute gives access to the string that identifies the protocol used to download a response. (:issue:`4878`)
System Message: ERROR/3 (<stdin>, line 100); backlink
Unknown interpreted text role "attr".
System Message: ERROR/3 (<stdin>, line 100); backlink
Unknown interpreted text role "issue".
:ref:`Stats <topics-stats>` now include the following entries that indicate the number of successes and failures in storing :ref:`feeds <topics-feed-exports>`:
System Message: ERROR/3 (<stdin>, line 104); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 104); backlink
Unknown interpreted text role "ref".
feedexport/success_count/<storage type> feedexport/failed_count/<storage type>
Where <storage type> is the feed storage backend class name, such as :class:`~scrapy.extensions.feedexport.FileFeedStorage` or :class:`~scrapy.extensions.feedexport.FTPFeedStorage`.
System Message: ERROR/3 (<stdin>, line 111); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 111); backlink
Unknown interpreted text role "class".
(:issue:`3947`, :issue:`4850`)
System Message: ERROR/3 (<stdin>, line 115); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 115); backlink
Unknown interpreted text role "issue".
The :class:`~scrapy.spidermiddlewares.urllength.UrlLengthMiddleware` spider middleware now logs ignored URLs with INFO :ref:`logging level <levels>` instead of DEBUG, and it now includes the following entry into :ref:`stats <topics-stats>` to keep track of the number of ignored URLs:
System Message: ERROR/3 (<stdin>, line 117); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 117); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 117); backlink
Unknown interpreted text role "ref".
urllength/request_ignored_count
System Message: ERROR/3 (<stdin>, line 125); backlink
Unknown interpreted text role "issue".
The :class:`~scrapy.downloadermiddlewares.httpcompression.HttpCompressionMiddleware` downloader middleware now logs the number of decompressed responses and the total count of resulting bytes:
System Message: ERROR/3 (<stdin>, line 127); backlink
Unknown interpreted text role "class".
httpcompression/response_bytes httpcompression/response_count
(:issue:`4797`, :issue:`4799`)
System Message: ERROR/3 (<stdin>, line 135); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 135); backlink
Unknown interpreted text role "issue".
Bug fixes
Fixed installation on PyPy installing PyDispatcher in addition to PyPyDispatcher, which could prevent Scrapy from working depending on which package got imported. (:issue:`4710`, :issue:`4814`)
System Message: ERROR/3 (<stdin>, line 141); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 141); backlink
Unknown interpreted text role "issue".
When inspecting a callback to check if it is a generator that also returns a value, an exception is no longer raised if the callback has a docstring with lower indentation than the following code. (:issue:`4477`, :issue:`4935`)
System Message: ERROR/3 (<stdin>, line 145); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 145); backlink
Unknown interpreted text role "issue".
The Content-Length header is no longer omitted from responses when using the default, HTTP/1.1 download handler (see :setting:`DOWNLOAD_HANDLERS`). (:issue:`5009`, :issue:`5034`, :issue:`5045`, :issue:`5057`, :issue:`5062`)
System Message: ERROR/3 (<stdin>, line 150); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 150); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 150); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 150); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 150); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 150); backlink
Unknown interpreted text role "issue".
Setting the :reqmeta:`handle_httpstatus_all` request meta key to False now has the same effect as not setting it at all, instead of having the same effect as setting it to True. (:issue:`3851`, :issue:`4694`)
System Message: ERROR/3 (<stdin>, line 155); backlink
Unknown interpreted text role "reqmeta".
System Message: ERROR/3 (<stdin>, line 155); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 155); backlink
Unknown interpreted text role "issue".
Documentation
Added instructions to :ref:`install Scrapy in Windows using pip <intro-install-windows>`. (:issue:`4715`, :issue:`4736`)
System Message: ERROR/3 (<stdin>, line 164); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 164); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 164); backlink
Unknown interpreted text role "issue".
Logging documentation now includes :ref:`additional ways to filter logs <topics-logging-advanced-customization>`. (:issue:`4216`, :issue:`4257`, :issue:`4965`)
System Message: ERROR/3 (<stdin>, line 168); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 168); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 168); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 168); backlink
Unknown interpreted text role "issue".
Covered how to deal with long lists of allowed domains in the :ref:`FAQ <faq>`. (:issue:`2263`, :issue:`3667`)
System Message: ERROR/3 (<stdin>, line 172); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 172); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 172); backlink
Unknown interpreted text role "issue".
Covered scrapy-bench in :ref:`benchmarking`. (:issue:`4996`, :issue:`5016`)
System Message: ERROR/3 (<stdin>, line 175); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 175); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 175); backlink
Unknown interpreted text role "issue".
Clarified that one :ref:`extension <topics-extensions>` instance is created per crawler. (:issue:`5014`)
System Message: ERROR/3 (<stdin>, line 178); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 178); backlink
Unknown interpreted text role "issue".
Fixed some errors in examples. (:issue:`4829`, :issue:`4830`, :issue:`4907`, :issue:`4909`, :issue:`5008`)
System Message: ERROR/3 (<stdin>, line 182); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 182); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 182); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 182); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 182); backlink
Unknown interpreted text role "issue".
Fixed some external links, typos, and so on. (:issue:`4892`, :issue:`4899`, :issue:`4936`, :issue:`4942`, :issue:`5005`, :issue:`5063`)
System Message: ERROR/3 (<stdin>, line 186); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 186); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 186); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 186); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 186); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 186); backlink
Unknown interpreted text role "issue".
The :ref:`list of Request.meta keys <topics-request-meta>` is now sorted alphabetically. (:issue:`5061`, :issue:`5065`)
System Message: ERROR/3 (<stdin>, line 190); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 190); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 190); backlink
Unknown interpreted text role "issue".
Updated references to Scrapinghub, which is now called Zyte. (:issue:`4973`, :issue:`5072`)
System Message: ERROR/3 (<stdin>, line 194); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 194); backlink
Unknown interpreted text role "issue".
Added a mention to contributors in the README. (:issue:`4956`)
System Message: ERROR/3 (<stdin>, line 197); backlink
Unknown interpreted text role "issue".
Reduced the top margin of lists. (:issue:`4974`)
System Message: ERROR/3 (<stdin>, line 199); backlink
Unknown interpreted text role "issue".
Quality Assurance
Made Python 3.9 support official (:issue:`4757`, :issue:`4759`)
System Message: ERROR/3 (<stdin>, line 205); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 205); backlink
Unknown interpreted text role "issue".
Extended typing hints (:issue:`4895`)
System Message: ERROR/3 (<stdin>, line 207); backlink
Unknown interpreted text role "issue".
Fixed deprecated uses of the Twisted API. (:issue:`4940`, :issue:`4950`, :issue:`5073`)
System Message: ERROR/3 (<stdin>, line 209); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 209); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 209); backlink
Unknown interpreted text role "issue".
Made our tests run with the new pip resolver. (:issue:`4710`, :issue:`4814`)
System Message: ERROR/3 (<stdin>, line 212); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 212); backlink
Unknown interpreted text role "issue".
Added tests to ensure that :ref:`coroutine support <coroutine-support>` is tested. (:issue:`4987`)
System Message: ERROR/3 (<stdin>, line 215); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 215); backlink
Unknown interpreted text role "issue".
Migrated from Travis CI to GitHub Actions. (:issue:`4924`)
System Message: ERROR/3 (<stdin>, line 218); backlink
Unknown interpreted text role "issue".
Fixed CI issues. (:issue:`4986`, :issue:`5020`, :issue:`5022`, :issue:`5027`, :issue:`5052`, :issue:`5053`)
System Message: ERROR/3 (<stdin>, line 220); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 220); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 220); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 220); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 220); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 220); backlink
Unknown interpreted text role "issue".
Implemented code refactorings, style fixes and cleanups. (:issue:`4911`, :issue:`4982`, :issue:`5001`, :issue:`5002`, :issue:`5076`)
System Message: ERROR/3 (<stdin>, line 224); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 224); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 224); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 224); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 224); backlink
Unknown interpreted text role "issue".
Scrapy 2.4.1 (2020-11-17)
Fixed :ref:`feed exports <topics-feed-exports>` overwrite support (:issue:`4845`, :issue:`4857`, :issue:`4859`)
System Message: ERROR/3 (<stdin>, line 233); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 233); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 233); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 233); backlink
Unknown interpreted text role "issue".
Fixed the AsyncIO event loop handling, which could make code hang (:issue:`4855`, :issue:`4872`)
System Message: ERROR/3 (<stdin>, line 235); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 235); backlink
Unknown interpreted text role "issue".
Fixed the IPv6-capable DNS resolver :class:`~scrapy.resolver.CachingHostnameResolver` for download handlers that call :meth:`reactor.resolve <twisted.internet.interfaces.IReactorCore.resolve>` (:issue:`4802`, :issue:`4803`)
System Message: ERROR/3 (<stdin>, line 238); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 238); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 238); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 238); backlink
Unknown interpreted text role "issue".
Fixed the output of the :command:`genspider` command showing placeholders instead of the import path of the generated spider module (:issue:`4874`)
System Message: ERROR/3 (<stdin>, line 244); backlink
Unknown interpreted text role "command".
System Message: ERROR/3 (<stdin>, line 244); backlink
Unknown interpreted text role "issue".
Migrated Windows CI from Azure Pipelines to GitHub Actions (:issue:`4869`, :issue:`4876`)
System Message: ERROR/3 (<stdin>, line 247); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 247); backlink
Unknown interpreted text role "issue".
Scrapy 2.4.0 (2020-10-11)
Highlights:
Python 3.5 support has been dropped.
The file_path method of :ref:`media pipelines <topics-media-pipeline>` can now access the source :ref:`item <topics-items>`.
System Message: ERROR/3 (<stdin>, line 260); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 260); backlink
Unknown interpreted text role "ref".
This allows you to set a download file path based on item data.
The new item_export_kwargs key of the :setting:`FEEDS` setting allows to define keyword parameters to pass to :ref:`item exporter classes <topics-exporters>`
System Message: ERROR/3 (<stdin>, line 265); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 265); backlink
Unknown interpreted text role "ref".
You can now choose whether :ref:`feed exports <topics-feed-exports>` overwrite or append to the output file.
System Message: ERROR/3 (<stdin>, line 269); backlink
Unknown interpreted text role "ref".
For example, when using the :command:`crawl` or :command:`runspider` commands, you can use the -O option instead of -o to overwrite the output file.
System Message: ERROR/3 (<stdin>, line 272); backlink
Unknown interpreted text role "command".
System Message: ERROR/3 (<stdin>, line 272); backlink
Unknown interpreted text role "command".
Zstd-compressed responses are now supported if zstandard is installed.
In settings, where the import path of a class is required, it is now possible to pass a class object instead.
Modified requirements
Python 3.6 or greater is now required; support for Python 3.5 has been dropped
As a result:
When using PyPy, PyPy 7.2.0 or greater :ref:`is now required <faq-python-versions>`
System Message: ERROR/3 (<stdin>, line 289); backlink
Unknown interpreted text role "ref".
For Amazon S3 storage support in :ref:`feed exports <topics-feed-storage-s3>` or :ref:`media pipelines <media-pipelines-s3>`, botocore 1.4.87 or greater is now required
System Message: ERROR/3 (<stdin>, line 292); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 292); backlink
Unknown interpreted text role "ref".
To use the :ref:`images pipeline <images-pipeline>`, Pillow 4.0.0 or greater is now required
System Message: ERROR/3 (<stdin>, line 296); backlink
Unknown interpreted text role "ref".
(:issue:`4718`, :issue:`4732`, :issue:`4733`, :issue:`4742`, :issue:`4743`, :issue:`4764`)
System Message: ERROR/3 (<stdin>, line 299); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 299); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 299); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 299); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 299); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 299); backlink
Unknown interpreted text role "issue".
Backward-incompatible changes
:class:`~scrapy.downloadermiddlewares.cookies.CookiesMiddleware` once again discards cookies defined in :attr:`Request.headers <scrapy.http.Request.headers>`.
System Message: ERROR/3 (<stdin>, line 306); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 306); backlink
Unknown interpreted text role "attr".
We decided to revert this bug fix, introduced in Scrapy 2.2.0, because it was reported that the current implementation could break existing code.
If you need to set cookies for a request, use the :class:`Request.cookies <scrapy.http.Request>` parameter.
System Message: ERROR/3 (<stdin>, line 313); backlink
Unknown interpreted text role "class".
A future version of Scrapy will include a new, better implementation of the reverted bug fix.
(:issue:`4717`, :issue:`4823`)
System Message: ERROR/3 (<stdin>, line 319); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 319); backlink
Unknown interpreted text role "issue".
Deprecation removals
:class:`scrapy.extensions.feedexport.S3FeedStorage` no longer reads the values of access_key and secret_key from the running project settings when they are not passed to its __init__ method; you must either pass those parameters to its __init__ method or use :class:`S3FeedStorage.from_crawler <scrapy.extensions.feedexport.S3FeedStorage.from_crawler>` (:issue:`4356`, :issue:`4411`, :issue:`4688`)
System Message: ERROR/3 (<stdin>, line 327); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 327); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 327); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 327); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 327); backlink
Unknown interpreted text role "issue".
:attr:`Rule.process_request <scrapy.spiders.crawl.Rule.process_request>` no longer admits callables which expect a single request parameter, rather than both request and response (:issue:`4818`)
System Message: ERROR/3 (<stdin>, line 335); backlink
Unknown interpreted text role "attr".
System Message: ERROR/3 (<stdin>, line 335); backlink
Unknown interpreted text role "issue".
Deprecations
In custom :ref:`media pipelines <topics-media-pipeline>`, signatures that do not accept a keyword-only item parameter in any of the methods that :ref:`now support this parameter <media-pipeline-item-parameter>` are now deprecated (:issue:`4628`, :issue:`4686`)
System Message: ERROR/3 (<stdin>, line 343); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 343); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 343); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 343); backlink
Unknown interpreted text role "issue".
In custom :ref:`feed storage backend classes <topics-feed-storage>`, __init__ method signatures that do not accept a keyword-only feed_options parameter are now deprecated (:issue:`547`, :issue:`716`, :issue:`4512`)
System Message: ERROR/3 (<stdin>, line 348); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 348); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 348); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 348); backlink
Unknown interpreted text role "issue".
The :class:`scrapy.utils.python.WeakKeyCache` class is now deprecated (:issue:`4684`, :issue:`4701`)
System Message: ERROR/3 (<stdin>, line 353); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 353); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 353); backlink
Unknown interpreted text role "issue".
The :func:`scrapy.utils.boto.is_botocore` function is now deprecated, use :func:`scrapy.utils.boto.is_botocore_available` instead (:issue:`4734`, :issue:`4776`)
System Message: ERROR/3 (<stdin>, line 356); backlink
Unknown interpreted text role "func".
System Message: ERROR/3 (<stdin>, line 356); backlink
Unknown interpreted text role "func".
System Message: ERROR/3 (<stdin>, line 356); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 356); backlink
Unknown interpreted text role "issue".
New features
The following methods of :ref:`media pipelines <topics-media-pipeline>` now accept an item keyword-only parameter containing the source :ref:`item <topics-items>`:
System Message: ERROR/3 (<stdin>, line 366); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 366); backlink
Unknown interpreted text role "ref".
In :class:`scrapy.pipelines.files.FilesPipeline`:
System Message: ERROR/3 (<stdin>, line 370); backlink
Unknown interpreted text role "class".
:meth:`~scrapy.pipelines.files.FilesPipeline.file_downloaded`
System Message: ERROR/3 (<stdin>, line 372); backlink
Unknown interpreted text role "meth".
:meth:`~scrapy.pipelines.files.FilesPipeline.file_path`
System Message: ERROR/3 (<stdin>, line 374); backlink
Unknown interpreted text role "meth".
:meth:`~scrapy.pipelines.files.FilesPipeline.media_downloaded`
System Message: ERROR/3 (<stdin>, line 376); backlink
Unknown interpreted text role "meth".
:meth:`~scrapy.pipelines.files.FilesPipeline.media_to_download`
System Message: ERROR/3 (<stdin>, line 378); backlink
Unknown interpreted text role "meth".
In :class:`scrapy.pipelines.images.ImagesPipeline`:
System Message: ERROR/3 (<stdin>, line 380); backlink
Unknown interpreted text role "class".
:meth:`~scrapy.pipelines.images.ImagesPipeline.file_downloaded`
System Message: ERROR/3 (<stdin>, line 382); backlink
Unknown interpreted text role "meth".
:meth:`~scrapy.pipelines.images.ImagesPipeline.file_path`
System Message: ERROR/3 (<stdin>, line 384); backlink
Unknown interpreted text role "meth".
:meth:`~scrapy.pipelines.images.ImagesPipeline.get_images`
System Message: ERROR/3 (<stdin>, line 386); backlink
Unknown interpreted text role "meth".
:meth:`~scrapy.pipelines.images.ImagesPipeline.image_downloaded`
System Message: ERROR/3 (<stdin>, line 388); backlink
Unknown interpreted text role "meth".
:meth:`~scrapy.pipelines.images.ImagesPipeline.media_downloaded`
System Message: ERROR/3 (<stdin>, line 390); backlink
Unknown interpreted text role "meth".
:meth:`~scrapy.pipelines.images.ImagesPipeline.media_to_download`
System Message: ERROR/3 (<stdin>, line 392); backlink
Unknown interpreted text role "meth".
(:issue:`4628`, :issue:`4686`)
System Message: ERROR/3 (<stdin>, line 394); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 394); backlink
Unknown interpreted text role "issue".
The new item_export_kwargs key of the :setting:`FEEDS` setting allows to define keyword parameters to pass to :ref:`item exporter classes <topics-exporters>` (:issue:`4606`, :issue:`4768`)
System Message: ERROR/3 (<stdin>, line 396); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 396); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 396); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 396); backlink
Unknown interpreted text role "issue".
:ref:`Feed exports <topics-feed-exports>` gained overwrite support:
System Message: ERROR/3 (<stdin>, line 400); backlink
Unknown interpreted text role "ref".
When using the :command:`crawl` or :command:`runspider` commands, you can use the -O option instead of -o to overwrite the output file
System Message: ERROR/3 (<stdin>, line 402); backlink
Unknown interpreted text role "command".
System Message: ERROR/3 (<stdin>, line 402); backlink
Unknown interpreted text role "command".
You can use the overwrite key in the :setting:`FEEDS` setting to configure whether to overwrite the output file (True) or append to its content (False)
System Message: ERROR/3 (<stdin>, line 406); backlink
Unknown interpreted text role "setting".
The __init__ and from_crawler methods of :ref:`feed storage backend classes <topics-feed-storage>` now receive a new keyword-only parameter, feed_options, which is a dictionary of :ref:`feed options <feed-options>`
System Message: ERROR/3 (<stdin>, line 410); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 410); backlink
Unknown interpreted text role "ref".
(:issue:`547`, :issue:`716`, :issue:`4512`)
System Message: ERROR/3 (<stdin>, line 415); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 415); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 415); backlink
Unknown interpreted text role "issue".
Zstd-compressed responses are now supported if zstandard is installed (:issue:`4831`)
System Message: ERROR/3 (<stdin>, line 417); backlink
Unknown interpreted text role "issue".
In settings, where the import path of a class is required, it is now possible to pass a class object instead (:issue:`3870`, :issue:`3873`).
System Message: ERROR/3 (<stdin>, line 420); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 420); backlink
Unknown interpreted text role "issue".
This includes also settings where only part of its value is made of an import path, such as :setting:`DOWNLOADER_MIDDLEWARES` or :setting:`DOWNLOAD_HANDLERS`.
System Message: ERROR/3 (<stdin>, line 423); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 423); backlink
Unknown interpreted text role "setting".
:ref:`Downloader middlewares <topics-downloader-middleware>` can now override :class:`response.request <scrapy.http.Response.request>`.
System Message: ERROR/3 (<stdin>, line 427); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 427); backlink
Unknown interpreted text role "class".
If a :ref:`downloader middleware <topics-downloader-middleware>` returns a :class:`~scrapy.http.Response` object from :meth:`~scrapy.downloadermiddlewares.DownloaderMiddleware.process_response` or :meth:`~scrapy.downloadermiddlewares.DownloaderMiddleware.process_exception` with a custom :class:`~scrapy.http.Request` object assigned to :class:`response.request <scrapy.http.Response.request>`:
System Message: ERROR/3 (<stdin>, line 430); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 430); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 430); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 430); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 430); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 430); backlink
Unknown interpreted text role "class".
The response is handled by the callback of that custom :class:`~scrapy.http.Request` object, instead of being handled by the callback of the original :class:`~scrapy.http.Request` object
System Message: ERROR/3 (<stdin>, line 438); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 438); backlink
Unknown interpreted text role "class".
That custom :class:`~scrapy.http.Request` object is now sent as the request argument to the :signal:`response_received` signal, instead of the original :class:`~scrapy.http.Request` object
System Message: ERROR/3 (<stdin>, line 442); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 442); backlink
Unknown interpreted text role "signal".
System Message: ERROR/3 (<stdin>, line 442); backlink
Unknown interpreted text role "class".
(:issue:`4529`, :issue:`4632`)
System Message: ERROR/3 (<stdin>, line 446); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 446); backlink
Unknown interpreted text role "issue".
When using the :ref:`FTP feed storage backend <topics-feed-storage-ftp>`:
System Message: ERROR/3 (<stdin>, line 448); backlink
Unknown interpreted text role "ref".
It is now possible to set the new overwrite :ref:`feed option <feed-options>` to False to append to an existing file instead of overwriting it
System Message: ERROR/3 (<stdin>, line 450); backlink
Unknown interpreted text role "ref".
The FTP password can now be omitted if it is not necessary
(:issue:`547`, :issue:`716`, :issue:`4512`)
System Message: ERROR/3 (<stdin>, line 456); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 456); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 456); backlink
Unknown interpreted text role "issue".
The __init__ method of :class:`~scrapy.exporters.CsvItemExporter` now supports an errors parameter to indicate how to handle encoding errors (:issue:`4755`)
System Message: ERROR/3 (<stdin>, line 458); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 458); backlink
Unknown interpreted text role "issue".
When :ref:`using asyncio <using-asyncio>`, it is now possible to :ref:`set a custom asyncio loop <using-custom-loops>` (:issue:`4306`, :issue:`4414`)
System Message: ERROR/3 (<stdin>, line 462); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 462); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 462); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 462); backlink
Unknown interpreted text role "issue".
Serialized requests (see :ref:`topics-jobs`) now support callbacks that are spider methods that delegate on other callable (:issue:`4756`)
System Message: ERROR/3 (<stdin>, line 466); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 466); backlink
Unknown interpreted text role "issue".
When a response is larger than :setting:`DOWNLOAD_MAXSIZE`, the logged message is now a warning, instead of an error (:issue:`3874`, :issue:`3886`, :issue:`4752`)
System Message: ERROR/3 (<stdin>, line 469); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 469); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 469); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 469); backlink
Unknown interpreted text role "issue".
Bug fixes
The :command:`genspider` command no longer overwrites existing files unless the --force option is used (:issue:`4561`, :issue:`4616`, :issue:`4623`)
System Message: ERROR/3 (<stdin>, line 477); backlink
Unknown interpreted text role "command".
System Message: ERROR/3 (<stdin>, line 477); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 477); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 477); backlink
Unknown interpreted text role "issue".
Cookies with an empty value are no longer considered invalid cookies (:issue:`4772`)
System Message: ERROR/3 (<stdin>, line 481); backlink
Unknown interpreted text role "issue".
The :command:`runspider` command now supports files with the .pyw file extension (:issue:`4643`, :issue:`4646`)
System Message: ERROR/3 (<stdin>, line 484); backlink
Unknown interpreted text role "command".
System Message: ERROR/3 (<stdin>, line 484); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 484); backlink
Unknown interpreted text role "issue".
The :class:`~scrapy.downloadermiddlewares.httpproxy.HttpProxyMiddleware` middleware now simply ignores unsupported proxy values (:issue:`3331`, :issue:`4778`)
System Message: ERROR/3 (<stdin>, line 487); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 487); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 487); backlink
Unknown interpreted text role "issue".
Checks for generator callbacks with a return statement no longer warn about return statements in nested functions (:issue:`4720`, :issue:`4721`)
System Message: ERROR/3 (<stdin>, line 491); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 491); backlink
Unknown interpreted text role "issue".
The system file mode creation mask no longer affects the permissions of files generated using the :command:`startproject` command (:issue:`4722`)
System Message: ERROR/3 (<stdin>, line 495); backlink
Unknown interpreted text role "command".
System Message: ERROR/3 (<stdin>, line 495); backlink
Unknown interpreted text role "issue".
:func:`scrapy.utils.iterators.xmliter` now supports namespaced node names (:issue:`861`, :issue:`4746`)
System Message: ERROR/3 (<stdin>, line 498); backlink
Unknown interpreted text role "func".
System Message: ERROR/3 (<stdin>, line 498); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 498); backlink
Unknown interpreted text role "issue".
:class:`~scrapy.Request` objects can now have about: URLs, which can work when using a headless browser (:issue:`4835`)
System Message: ERROR/3 (<stdin>, line 501); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 501); backlink
Unknown interpreted text role "issue".
Documentation
The :setting:`FEED_URI_PARAMS` setting is now documented (:issue:`4671`, :issue:`4724`)
System Message: ERROR/3 (<stdin>, line 508); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 508); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 508); backlink
Unknown interpreted text role "issue".
Improved the documentation of :ref:`link extractors <topics-link-extractors>` with an usage example from a spider callback and reference documentation for the :class:`~scrapy.link.Link` class (:issue:`4751`, :issue:`4775`)
System Message: ERROR/3 (<stdin>, line 511); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 511); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 511); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 511); backlink
Unknown interpreted text role "issue".
Clarified the impact of :setting:`CONCURRENT_REQUESTS` when using the :class:`~scrapy.extensions.closespider.CloseSpider` extension (:issue:`4836`)
System Message: ERROR/3 (<stdin>, line 516); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 516); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 516); backlink
Unknown interpreted text role "issue".
Removed references to Python 2’s unicode type (:issue:`4547`, :issue:`4703`)
System Message: ERROR/3 (<stdin>, line 520); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 520); backlink
Unknown interpreted text role "issue".
We now have an :ref:`official deprecation policy <deprecation-policy>` (:issue:`4705`)
System Message: ERROR/3 (<stdin>, line 523); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 523); backlink
Unknown interpreted text role "issue".
Our :ref:`documentation policies <documentation-policies>` now cover usage of Sphinx’s :rst:dir:`versionadded` and :rst:dir:`versionchanged` directives, and we have removed usages referencing Scrapy 1.4.0 and earlier versions (:issue:`3971`, :issue:`4310`)
System Message: ERROR/3 (<stdin>, line 526); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 526); backlink
Unknown interpreted text role "rst:dir".
System Message: ERROR/3 (<stdin>, line 526); backlink
Unknown interpreted text role "rst:dir".
System Message: ERROR/3 (<stdin>, line 526); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 526); backlink
Unknown interpreted text role "issue".
Other documentation cleanups (:issue:`4090`, :issue:`4782`, :issue:`4800`, :issue:`4801`, :issue:`4809`, :issue:`4816`, :issue:`4825`)
System Message: ERROR/3 (<stdin>, line 531); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 531); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 531); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 531); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 531); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 531); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 531); backlink
Unknown interpreted text role "issue".
Quality assurance
Extended typing hints (:issue:`4243`, :issue:`4691`)
System Message: ERROR/3 (<stdin>, line 538); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 538); backlink
Unknown interpreted text role "issue".
Added tests for the :command:`check` command (:issue:`4663`)
System Message: ERROR/3 (<stdin>, line 540); backlink
Unknown interpreted text role "command".
System Message: ERROR/3 (<stdin>, line 540); backlink
Unknown interpreted text role "issue".
Fixed test failures on Debian (:issue:`4726`, :issue:`4727`, :issue:`4735`)
System Message: ERROR/3 (<stdin>, line 542); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 542); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 542); backlink
Unknown interpreted text role "issue".
Improved Windows test coverage (:issue:`4723`)
System Message: ERROR/3 (<stdin>, line 544); backlink
Unknown interpreted text role "issue".
Switched to :ref:`formatted string literals <f-strings>` where possible (:issue:`4307`, :issue:`4324`, :issue:`4672`)
System Message: ERROR/3 (<stdin>, line 546); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 546); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 546); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 546); backlink
Unknown interpreted text role "issue".
Modernized :func:`super` usage (:issue:`4707`)
System Message: ERROR/3 (<stdin>, line 549); backlink
Unknown interpreted text role "func".
System Message: ERROR/3 (<stdin>, line 549); backlink
Unknown interpreted text role "issue".
Other code and test cleanups (:issue:`1790`, :issue:`3288`, :issue:`4165`, :issue:`4564`, :issue:`4651`, :issue:`4714`, :issue:`4738`, :issue:`4745`, :issue:`4747`, :issue:`4761`, :issue:`4765`, :issue:`4804`, :issue:`4817`, :issue:`4820`, :issue:`4822`, :issue:`4839`)
System Message: ERROR/3 (<stdin>, line 551); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 551); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 551); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 551); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 551); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 551); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 551); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 551); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 551); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 551); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 551); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 551); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 551); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 551); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 551); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 551); backlink
Unknown interpreted text role "issue".
Scrapy 2.3.0 (2020-08-04)
Highlights:
:ref:`Feed exports <topics-feed-exports>` now support :ref:`Google Cloud Storage <topics-feed-storage-gcs>` as a storage backend
System Message: ERROR/3 (<stdin>, line 564); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 564); backlink
Unknown interpreted text role "ref".
The new :setting:`FEED_EXPORT_BATCH_ITEM_COUNT` setting allows to deliver output items in batches of up to the specified number of items.
System Message: ERROR/3 (<stdin>, line 567); backlink
Unknown interpreted text role "setting".
It also serves as a workaround for :ref:`delayed file delivery <delayed-file-delivery>`, which causes Scrapy to only start item delivery after the crawl has finished when using certain storage backends (:ref:`S3 <topics-feed-storage-s3>`, :ref:`FTP <topics-feed-storage-ftp>`, and now :ref:`GCS <topics-feed-storage-gcs>`).
System Message: ERROR/3 (<stdin>, line 570); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 570); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 570); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 570); backlink
Unknown interpreted text role "ref".
The base implementation of :ref:`item loaders <topics-loaders>` has been moved into a separate library, :doc:`itemloaders <itemloaders:index>`, allowing usage from outside Scrapy and a separate release schedule
System Message: ERROR/3 (<stdin>, line 576); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 576); backlink
Unknown interpreted text role "doc".
Deprecation removals
Removed the following classes and their parent modules from scrapy.linkextractors:
- htmlparser.HtmlParserLinkExtractor
- regex.RegexLinkExtractor
- sgml.BaseSgmlLinkExtractor
- sgml.SgmlLinkExtractor
Use :class:`LinkExtractor <scrapy.linkextractors.lxmlhtml.LxmlLinkExtractor>` instead (:issue:`4356`, :issue:`4679`)
System Message: ERROR/3 (<stdin>, line 591); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 591); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 591); backlink
Unknown interpreted text role "issue".
Deprecations
The scrapy.utils.python.retry_on_eintr function is now deprecated (:issue:`4683`)
System Message: ERROR/3 (<stdin>, line 599); backlink
Unknown interpreted text role "issue".
New features
:ref:`Feed exports <topics-feed-exports>` support :ref:`Google Cloud Storage <topics-feed-storage-gcs>` (:issue:`685`, :issue:`3608`)
System Message: ERROR/3 (<stdin>, line 606); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 606); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 606); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 606); backlink
Unknown interpreted text role "issue".
New :setting:`FEED_EXPORT_BATCH_ITEM_COUNT` setting for batch deliveries (:issue:`4250`, :issue:`4434`)
System Message: ERROR/3 (<stdin>, line 609); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 609); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 609); backlink
Unknown interpreted text role "issue".
The :command:`parse` command now allows specifying an output file (:issue:`4317`, :issue:`4377`)
System Message: ERROR/3 (<stdin>, line 612); backlink
Unknown interpreted text role "command".
System Message: ERROR/3 (<stdin>, line 612); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 612); backlink
Unknown interpreted text role "issue".
:meth:`Request.from_curl <scrapy.http.Request.from_curl>` and :func:`~scrapy.utils.curl.curl_to_request_kwargs` now also support --data-raw (:issue:`4612`)
System Message: ERROR/3 (<stdin>, line 615); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 615); backlink
Unknown interpreted text role "func".
System Message: ERROR/3 (<stdin>, line 615); backlink
Unknown interpreted text role "issue".
A parse callback may now be used in built-in spider subclasses, such as :class:`~scrapy.spiders.CrawlSpider` (:issue:`712`, :issue:`732`, :issue:`781`, :issue:`4254` )
System Message: ERROR/3 (<stdin>, line 619); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 619); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 619); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 619); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 619); backlink
Unknown interpreted text role "issue".
Bug fixes
Fixed the :ref:`CSV exporting <topics-feed-format-csv>` of :ref:`dataclass items <dataclass-items>` and :ref:`attr.s items <attrs-items>` (:issue:`4667`, :issue:`4668`)
System Message: ERROR/3 (<stdin>, line 627); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 627); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 627); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 627); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 627); backlink
Unknown interpreted text role "issue".
:meth:`Request.from_curl <scrapy.http.Request.from_curl>` and :func:`~scrapy.utils.curl.curl_to_request_kwargs` now set the request method to POST when a request body is specified and no request method is specified (:issue:`4612`)
System Message: ERROR/3 (<stdin>, line 631); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 631); backlink
Unknown interpreted text role "func".
System Message: ERROR/3 (<stdin>, line 631); backlink
Unknown interpreted text role "issue".
The processing of ANSI escape sequences in enabled in Windows 10.0.14393 and later, where it is required for colored output (:issue:`4393`, :issue:`4403`)
System Message: ERROR/3 (<stdin>, line 636); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 636); backlink
Unknown interpreted text role "issue".
Documentation
Updated the OpenSSL cipher list format link in the documentation about the :setting:`DOWNLOADER_CLIENT_TLS_CIPHERS` setting (:issue:`4653`)
System Message: ERROR/3 (<stdin>, line 644); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 644); backlink
Unknown interpreted text role "issue".
Simplified the code example in :ref:`topics-loaders-dataclass` (:issue:`4652`)
System Message: ERROR/3 (<stdin>, line 647); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 647); backlink
Unknown interpreted text role "issue".
Quality assurance
The base implementation of :ref:`item loaders <topics-loaders>` has been moved into :doc:`itemloaders <itemloaders:index>` (:issue:`4005`, :issue:`4516`)
System Message: ERROR/3 (<stdin>, line 656); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 656); backlink
Unknown interpreted text role "doc".
System Message: ERROR/3 (<stdin>, line 656); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 656); backlink
Unknown interpreted text role "issue".
Fixed a silenced error in some scheduler tests (:issue:`4644`, :issue:`4645`)
System Message: ERROR/3 (<stdin>, line 660); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 660); backlink
Unknown interpreted text role "issue".
Renewed the localhost certificate used for SSL tests (:issue:`4650`)
System Message: ERROR/3 (<stdin>, line 663); backlink
Unknown interpreted text role "issue".
Removed cookie-handling code specific to Python 2 (:issue:`4682`)
System Message: ERROR/3 (<stdin>, line 665); backlink
Unknown interpreted text role "issue".
Stopped using Python 2 unicode literal syntax (:issue:`4704`)
System Message: ERROR/3 (<stdin>, line 667); backlink
Unknown interpreted text role "issue".
Stopped using a backlash for line continuation (:issue:`4673`)
System Message: ERROR/3 (<stdin>, line 669); backlink
Unknown interpreted text role "issue".
Removed unneeded entries from the MyPy exception list (:issue:`4690`)
System Message: ERROR/3 (<stdin>, line 671); backlink
Unknown interpreted text role "issue".
Automated tests now pass on Windows as part of our continuous integration system (:issue:`4458`)
System Message: ERROR/3 (<stdin>, line 673); backlink
Unknown interpreted text role "issue".
Automated tests now pass on the latest PyPy version for supported Python versions in our continuous integration system (:issue:`4504`)
System Message: ERROR/3 (<stdin>, line 676); backlink
Unknown interpreted text role "issue".
Scrapy 2.2.1 (2020-07-17)
The :command:`startproject` command no longer makes unintended changes to the permissions of files in the destination folder, such as removing execution permissions (:issue:`4662`, :issue:`4666`)
System Message: ERROR/3 (<stdin>, line 685); backlink
Unknown interpreted text role "command".
System Message: ERROR/3 (<stdin>, line 685); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 685); backlink
Unknown interpreted text role "issue".
Scrapy 2.2.0 (2020-06-24)
Highlights:
Python 3.5.2+ is required now
:ref:`dataclass objects <dataclass-items>` and :ref:`attrs objects <attrs-items>` are now valid :ref:`item types <item-types>`
System Message: ERROR/3 (<stdin>, line 698); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 698); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 698); backlink
Unknown interpreted text role "ref".
New :meth:`TextResponse.json <scrapy.http.TextResponse.json>` method
System Message: ERROR/3 (<stdin>, line 701); backlink
Unknown interpreted text role "meth".
New :signal:`bytes_received` signal that allows canceling response download
System Message: ERROR/3 (<stdin>, line 702); backlink
Unknown interpreted text role "signal".
:class:`~scrapy.downloadermiddlewares.cookies.CookiesMiddleware` fixes
System Message: ERROR/3 (<stdin>, line 703); backlink
Unknown interpreted text role "class".
Backward-incompatible changes
Support for Python 3.5.0 and 3.5.1 has been dropped; Scrapy now refuses to run with a Python version lower than 3.5.2, which introduced :class:`typing.Type` (:issue:`4615`)
System Message: ERROR/3 (<stdin>, line 708); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 708); backlink
Unknown interpreted text role "issue".
Deprecations
:meth:`TextResponse.body_as_unicode <scrapy.http.TextResponse.body_as_unicode>` is now deprecated, use :attr:`TextResponse.text <scrapy.http.TextResponse.text>` instead (:issue:`4546`, :issue:`4555`, :issue:`4579`)
System Message: ERROR/3 (<stdin>, line 716); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 716); backlink
Unknown interpreted text role "attr".
System Message: ERROR/3 (<stdin>, line 716); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 716); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 716); backlink
Unknown interpreted text role "issue".
:class:`scrapy.item.BaseItem` is now deprecated, use :class:`scrapy.item.Item` instead (:issue:`4534`)
System Message: ERROR/3 (<stdin>, line 721); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 721); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 721); backlink
Unknown interpreted text role "issue".
New features
:ref:`dataclass objects <dataclass-items>` and :ref:`attrs objects <attrs-items>` are now valid :ref:`item types <item-types>`, and a new itemadapter library makes it easy to write code that :ref:`supports any item type <supporting-item-types>` (:issue:`2749`, :issue:`2807`, :issue:`3761`, :issue:`3881`, :issue:`4642`)
System Message: ERROR/3 (<stdin>, line 728); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 728); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 728); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 728); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 728); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 728); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 728); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 728); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 728); backlink
Unknown interpreted text role "issue".
A new :meth:`TextResponse.json <scrapy.http.TextResponse.json>` method allows to deserialize JSON responses (:issue:`2444`, :issue:`4460`, :issue:`4574`)
System Message: ERROR/3 (<stdin>, line 734); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 734); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 734); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 734); backlink
Unknown interpreted text role "issue".
A new :signal:`bytes_received` signal allows monitoring response download progress and :ref:`stopping downloads <topics-stop-response-download>` (:issue:`4205`, :issue:`4559`)
System Message: ERROR/3 (<stdin>, line 738); backlink
Unknown interpreted text role "signal".
System Message: ERROR/3 (<stdin>, line 738); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 738); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 738); backlink
Unknown interpreted text role "issue".
The dictionaries in the result list of a :ref:`media pipeline <topics-media-pipeline>` now include a new key, status, which indicates if the file was downloaded or, if the file was not downloaded, why it was not downloaded; see :meth:`FilesPipeline.get_media_requests <scrapy.pipelines.files.FilesPipeline.get_media_requests>` for more information (:issue:`2893`, :issue:`4486`)
System Message: ERROR/3 (<stdin>, line 742); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 742); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 742); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 742); backlink
Unknown interpreted text role "issue".
When using :ref:`Google Cloud Storage <media-pipeline-gcs>` for a :ref:`media pipeline <topics-media-pipeline>`, a warning is now logged if the configured credentials do not grant the required permissions (:issue:`4346`, :issue:`4508`)
System Message: ERROR/3 (<stdin>, line 749); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 749); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 749); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 749); backlink
Unknown interpreted text role "issue".
:ref:`Link extractors <topics-link-extractors>` are now serializable, as long as you do not use :ref:`lambdas <lambda>` for parameters; for example, you can now pass link extractors in :attr:`Request.cb_kwargs <scrapy.http.Request.cb_kwargs>` or :attr:`Request.meta <scrapy.http.Request.meta>` when :ref:`persisting scheduled requests <topics-jobs>` (:issue:`4554`)
System Message: ERROR/3 (<stdin>, line 754); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 754); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 754); backlink
Unknown interpreted text role "attr".
System Message: ERROR/3 (<stdin>, line 754); backlink
Unknown interpreted text role "attr".
System Message: ERROR/3 (<stdin>, line 754); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 754); backlink
Unknown interpreted text role "issue".
Upgraded the :ref:`pickle protocol <pickle-protocols>` that Scrapy uses from protocol 2 to protocol 4, improving serialization capabilities and performance (:issue:`4135`, :issue:`4541`)
System Message: ERROR/3 (<stdin>, line 761); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 761); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 761); backlink
Unknown interpreted text role "issue".
:func:`scrapy.utils.misc.create_instance` now raises a :exc:`TypeError` exception if the resulting instance is None (:issue:`4528`, :issue:`4532`)
System Message: ERROR/3 (<stdin>, line 765); backlink
Unknown interpreted text role "func".
System Message: ERROR/3 (<stdin>, line 765); backlink
Unknown interpreted text role "exc".
System Message: ERROR/3 (<stdin>, line 765); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 765); backlink
Unknown interpreted text role "issue".
Bug fixes
:class:`~scrapy.downloadermiddlewares.cookies.CookiesMiddleware` no longer discards cookies defined in :attr:`Request.headers <scrapy.http.Request.headers>` (:issue:`1992`, :issue:`2400`)
System Message: ERROR/3 (<stdin>, line 775); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 775); backlink
Unknown interpreted text role "attr".
System Message: ERROR/3 (<stdin>, line 775); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 775); backlink
Unknown interpreted text role "issue".
:class:`~scrapy.downloadermiddlewares.cookies.CookiesMiddleware` no longer re-encodes cookies defined as :class:`bytes` in the cookies parameter of the __init__ method of :class:`~scrapy.http.Request` (:issue:`2400`, :issue:`3575`)
System Message: ERROR/3 (<stdin>, line 779); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 779); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 779); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 779); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 779); backlink
Unknown interpreted text role "issue".
When :setting:`FEEDS` defines multiple URIs, :setting:`FEED_STORE_EMPTY` is False and the crawl yields no items, Scrapy no longer stops feed exports after the first URI (:issue:`4621`, :issue:`4626`)
System Message: ERROR/3 (<stdin>, line 784); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 784); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 784); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 784); backlink
Unknown interpreted text role "issue".
:class:`~scrapy.spiders.Spider` callbacks defined using :doc:`coroutine syntax <topics/coroutines>` no longer need to return an iterable, and may instead return a :class:`~scrapy.http.Request` object, an :ref:`item <topics-items>`, or None (:issue:`4609`)
System Message: ERROR/3 (<stdin>, line 788); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 788); backlink
Unknown interpreted text role "doc".
System Message: ERROR/3 (<stdin>, line 788); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 788); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 788); backlink
Unknown interpreted text role "issue".
The :command:`startproject` command now ensures that the generated project folders and files have the right permissions (:issue:`4604`)
System Message: ERROR/3 (<stdin>, line 793); backlink
Unknown interpreted text role "command".
System Message: ERROR/3 (<stdin>, line 793); backlink
Unknown interpreted text role "issue".
Fix a :exc:`KeyError` exception being sometimes raised from :class:`scrapy.utils.datatypes.LocalWeakReferencedCache` (:issue:`4597`, :issue:`4599`)
System Message: ERROR/3 (<stdin>, line 796); backlink
Unknown interpreted text role "exc".
System Message: ERROR/3 (<stdin>, line 796); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 796); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 796); backlink
Unknown interpreted text role "issue".
When :setting:`FEEDS` defines multiple URIs, log messages about items being stored now contain information from the corresponding feed, instead of always containing information about only one of the feeds (:issue:`4619`, :issue:`4629`)
System Message: ERROR/3 (<stdin>, line 800); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 800); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 800); backlink
Unknown interpreted text role "issue".
Documentation
Added a new section about :ref:`accessing cb_kwargs from errbacks <errback-cb_kwargs>` (:issue:`4598`, :issue:`4634`)
System Message: ERROR/3 (<stdin>, line 809); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 809); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 809); backlink
Unknown interpreted text role "issue".
Covered chompjs in :ref:`topics-parsing-javascript` (:issue:`4556`, :issue:`4562`)
System Message: ERROR/3 (<stdin>, line 812); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 812); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 812); backlink
Unknown interpreted text role "issue".
Removed from :doc:`topics/coroutines` the warning about the API being experimental (:issue:`4511`, :issue:`4513`)
System Message: ERROR/3 (<stdin>, line 815); backlink
Unknown interpreted text role "doc".
System Message: ERROR/3 (<stdin>, line 815); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 815); backlink
Unknown interpreted text role "issue".
Removed references to unsupported versions of :doc:`Twisted <twisted:index>` (:issue:`4533`)
System Message: ERROR/3 (<stdin>, line 818); backlink
Unknown interpreted text role "doc".
System Message: ERROR/3 (<stdin>, line 818); backlink
Unknown interpreted text role "issue".
Updated the description of the :ref:`screenshot pipeline example <ScreenshotPipeline>`, which now uses :doc:`coroutine syntax <topics/coroutines>` instead of returning a :class:`~twisted.internet.defer.Deferred` (:issue:`4514`, :issue:`4593`)
System Message: ERROR/3 (<stdin>, line 821); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 821); backlink
Unknown interpreted text role "doc".
System Message: ERROR/3 (<stdin>, line 821); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 821); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 821); backlink
Unknown interpreted text role "issue".
Removed a misleading import line from the :func:`scrapy.utils.log.configure_logging` code example (:issue:`4510`, :issue:`4587`)
System Message: ERROR/3 (<stdin>, line 826); backlink
Unknown interpreted text role "func".
System Message: ERROR/3 (<stdin>, line 826); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 826); backlink
Unknown interpreted text role "issue".
The display-on-hover behavior of internal documentation references now also covers links to :ref:`commands <topics-commands>`, :attr:`Request.meta <scrapy.http.Request.meta>` keys, :ref:`settings <topics-settings>` and :ref:`signals <topics-signals>` (:issue:`4495`, :issue:`4563`)
System Message: ERROR/3 (<stdin>, line 830); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 830); backlink
Unknown interpreted text role "attr".
System Message: ERROR/3 (<stdin>, line 830); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 830); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 830); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 830); backlink
Unknown interpreted text role "issue".
It is again possible to download the documentation for offline reading (:issue:`4578`, :issue:`4585`)
System Message: ERROR/3 (<stdin>, line 835); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 835); backlink
Unknown interpreted text role "issue".
Removed backslashes preceding *args and **kwargs in some function and method signatures (:issue:`4592`, :issue:`4596`)
System Message: ERROR/3 (<stdin>, line 838); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 838); backlink
Unknown interpreted text role "issue".
Quality assurance
Adjusted the code base further to our :ref:`style guidelines <coding-style>` (:issue:`4237`, :issue:`4525`, :issue:`4538`, :issue:`4539`, :issue:`4540`, :issue:`4542`, :issue:`4543`, :issue:`4544`, :issue:`4545`, :issue:`4557`, :issue:`4558`, :issue:`4566`, :issue:`4568`, :issue:`4572`)
System Message: ERROR/3 (<stdin>, line 847); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 847); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 847); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 847); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 847); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 847); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 847); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 847); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 847); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 847); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 847); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 847); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 847); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 847); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 847); backlink
Unknown interpreted text role "issue".
Removed remnants of Python 2 support (:issue:`4550`, :issue:`4553`, :issue:`4568`)
System Message: ERROR/3 (<stdin>, line 853); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 853); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 853); backlink
Unknown interpreted text role "issue".
Improved code sharing between the :command:`crawl` and :command:`runspider` commands (:issue:`4548`, :issue:`4552`)
System Message: ERROR/3 (<stdin>, line 856); backlink
Unknown interpreted text role "command".
System Message: ERROR/3 (<stdin>, line 856); backlink
Unknown interpreted text role "command".
System Message: ERROR/3 (<stdin>, line 856); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 856); backlink
Unknown interpreted text role "issue".
Replaced chain(*iterable) with chain.from_iterable(iterable) (:issue:`4635`)
System Message: ERROR/3 (<stdin>, line 859); backlink
Unknown interpreted text role "issue".
You may now run the :mod:`asyncio` tests with Tox on any Python version (:issue:`4521`)
System Message: ERROR/3 (<stdin>, line 862); backlink
Unknown interpreted text role "mod".
System Message: ERROR/3 (<stdin>, line 862); backlink
Unknown interpreted text role "issue".
Updated test requirements to reflect an incompatibility with pytest 5.4 and 5.4.1 (:issue:`4588`)
System Message: ERROR/3 (<stdin>, line 865); backlink
Unknown interpreted text role "issue".
Improved :class:`~scrapy.spiderloader.SpiderLoader` test coverage for scenarios involving duplicate spider names (:issue:`4549`, :issue:`4560`)
System Message: ERROR/3 (<stdin>, line 868); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 868); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 868); backlink
Unknown interpreted text role "issue".
Configured Travis CI to also run the tests with Python 3.5.2 (:issue:`4518`, :issue:`4615`)
System Message: ERROR/3 (<stdin>, line 871); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 871); backlink
Unknown interpreted text role "issue".
Added a Pylint job to Travis CI (:issue:`3727`)
System Message: ERROR/3 (<stdin>, line 874); backlink
Unknown interpreted text role "issue".
Added a Mypy job to Travis CI (:issue:`4637`)
System Message: ERROR/3 (<stdin>, line 877); backlink
Unknown interpreted text role "issue".
Made use of set literals in tests (:issue:`4573`)
System Message: ERROR/3 (<stdin>, line 879); backlink
Unknown interpreted text role "issue".
Cleaned up the Travis CI configuration (:issue:`4517`, :issue:`4519`, :issue:`4522`, :issue:`4537`)
System Message: ERROR/3 (<stdin>, line 881); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 881); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 881); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 881); backlink
Unknown interpreted text role "issue".
Scrapy 2.1.0 (2020-04-24)
Highlights:
New :setting:`FEEDS` setting to export to multiple feeds
System Message: ERROR/3 (<stdin>, line 892); backlink
Unknown interpreted text role "setting".
New :attr:`Response.ip_address <scrapy.http.Response.ip_address>` attribute
System Message: ERROR/3 (<stdin>, line 893); backlink
Unknown interpreted text role "attr".
Backward-incompatible changes
:exc:`AssertionError` exceptions triggered by :ref:`assert <assert>` statements have been replaced by new exception types, to support running Python in optimized mode (see :option:`-O`) without changing Scrapy’s behavior in any unexpected ways.
System Message: ERROR/3 (<stdin>, line 898); backlink
Unknown interpreted text role "exc".
System Message: ERROR/3 (<stdin>, line 898); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 898); backlink
Unknown interpreted text role "option".
If you catch an :exc:`AssertionError` exception from Scrapy, update your code to catch the corresponding new exception.
System Message: ERROR/3 (<stdin>, line 903); backlink
Unknown interpreted text role "exc".
System Message: ERROR/3 (<stdin>, line 906); backlink
Unknown interpreted text role "issue".
Deprecation removals
The LOG_UNSERIALIZABLE_REQUESTS setting is no longer supported, use :setting:`SCHEDULER_DEBUG` instead (:issue:`4385`)
System Message: ERROR/3 (<stdin>, line 912); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 912); backlink
Unknown interpreted text role "issue".
The REDIRECT_MAX_METAREFRESH_DELAY setting is no longer supported, use :setting:`METAREFRESH_MAXDELAY` instead (:issue:`4385`)
System Message: ERROR/3 (<stdin>, line 915); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 915); backlink
Unknown interpreted text role "issue".
The :class:`~scrapy.downloadermiddlewares.chunked.ChunkedTransferMiddleware` middleware has been removed, including the entire :class:`scrapy.downloadermiddlewares.chunked` module; chunked transfers work out of the box (:issue:`4431`)
System Message: ERROR/3 (<stdin>, line 918); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 918); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 918); backlink
Unknown interpreted text role "issue".
The spiders property has been removed from :class:`~scrapy.crawler.Crawler`, use :class:`CrawlerRunner.spider_loader <scrapy.crawler.CrawlerRunner.spider_loader>` or instantiate :setting:`SPIDER_LOADER_CLASS` with your settings instead (:issue:`4398`)
System Message: ERROR/3 (<stdin>, line 923); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 923); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 923); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 923); backlink
Unknown interpreted text role "issue".
The MultiValueDict, MultiValueDictKeyError, and SiteNode classes have been removed from :mod:`scrapy.utils.datatypes` (:issue:`4400`)
System Message: ERROR/3 (<stdin>, line 928); backlink
Unknown interpreted text role "mod".
System Message: ERROR/3 (<stdin>, line 928); backlink
Unknown interpreted text role "issue".
Deprecations
The FEED_FORMAT and FEED_URI settings have been deprecated in favor of the new :setting:`FEEDS` setting (:issue:`1336`, :issue:`3858`, :issue:`4507`)
System Message: ERROR/3 (<stdin>, line 936); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 936); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 936); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 936); backlink
Unknown interpreted text role "issue".
New features
A new setting, :setting:`FEEDS`, allows configuring multiple output feeds with different settings each (:issue:`1336`, :issue:`3858`, :issue:`4507`)
System Message: ERROR/3 (<stdin>, line 944); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 944); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 944); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 944); backlink
Unknown interpreted text role "issue".
The :command:`crawl` and :command:`runspider` commands now support multiple -o parameters (:issue:`1336`, :issue:`3858`, :issue:`4507`)
System Message: ERROR/3 (<stdin>, line 947); backlink
Unknown interpreted text role "command".
System Message: ERROR/3 (<stdin>, line 947); backlink
Unknown interpreted text role "command".
System Message: ERROR/3 (<stdin>, line 947); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 947); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 947); backlink
Unknown interpreted text role "issue".
The :command:`crawl` and :command:`runspider` commands now support specifying an output format by appending :<format> to the output file (:issue:`1336`, :issue:`3858`, :issue:`4507`)
System Message: ERROR/3 (<stdin>, line 950); backlink
Unknown interpreted text role "command".
System Message: ERROR/3 (<stdin>, line 950); backlink
Unknown interpreted text role "command".
System Message: ERROR/3 (<stdin>, line 950); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 950); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 950); backlink
Unknown interpreted text role "issue".
The new :attr:`Response.ip_address <scrapy.http.Response.ip_address>` attribute gives access to the IP address that originated a response (:issue:`3903`, :issue:`3940`)
System Message: ERROR/3 (<stdin>, line 954); backlink
Unknown interpreted text role "attr".
System Message: ERROR/3 (<stdin>, line 954); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 954); backlink
Unknown interpreted text role "issue".
A warning is now issued when a value in :attr:`~scrapy.spiders.Spider.allowed_domains` includes a port (:issue:`50`, :issue:`3198`, :issue:`4413`)
System Message: ERROR/3 (<stdin>, line 958); backlink
Unknown interpreted text role "attr".
System Message: ERROR/3 (<stdin>, line 958); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 958); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 958); backlink
Unknown interpreted text role "issue".
Zsh completion now excludes used option aliases from the completion list (:issue:`4438`)
System Message: ERROR/3 (<stdin>, line 962); backlink
Unknown interpreted text role "issue".
Bug fixes
:ref:`Request serialization <request-serialization>` no longer breaks for callbacks that are spider attributes which are assigned a function with a different name (:issue:`4500`)
System Message: ERROR/3 (<stdin>, line 969); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 969); backlink
Unknown interpreted text role "issue".
None values in :attr:`~scrapy.spiders.Spider.allowed_domains` no longer cause a :exc:`TypeError` exception (:issue:`4410`)
System Message: ERROR/3 (<stdin>, line 973); backlink
Unknown interpreted text role "attr".
System Message: ERROR/3 (<stdin>, line 973); backlink
Unknown interpreted text role "exc".
System Message: ERROR/3 (<stdin>, line 973); backlink
Unknown interpreted text role "issue".
Zsh completion no longer allows options after arguments (:issue:`4438`)
System Message: ERROR/3 (<stdin>, line 976); backlink
Unknown interpreted text role "issue".
zope.interface 5.0.0 and later versions are now supported (:issue:`4447`, :issue:`4448`)
System Message: ERROR/3 (<stdin>, line 978); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 978); backlink
Unknown interpreted text role "issue".
:meth:`Spider.make_requests_from_url <scrapy.spiders.Spider.make_requests_from_url>`, deprecated in Scrapy 1.4.0, now issues a warning when used (:issue:`4412`)
System Message: ERROR/3 (<stdin>, line 981); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 981); backlink
Unknown interpreted text role "issue".
Documentation
Improved the documentation about signals that allow their handlers to return a :class:`~twisted.internet.defer.Deferred` (:issue:`4295`, :issue:`4390`)
System Message: ERROR/3 (<stdin>, line 989); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 989); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 989); backlink
Unknown interpreted text role "issue".
Our PyPI entry now includes links for our documentation, our source code repository and our issue tracker (:issue:`4456`)
System Message: ERROR/3 (<stdin>, line 993); backlink
Unknown interpreted text role "issue".
Covered the curl2scrapy service in the documentation (:issue:`4206`, :issue:`4455`)
System Message: ERROR/3 (<stdin>, line 996); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 996); backlink
Unknown interpreted text role "issue".
Removed references to the Guppy library, which only works in Python 2 (:issue:`4285`, :issue:`4343`)
System Message: ERROR/3 (<stdin>, line 999); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 999); backlink
Unknown interpreted text role "issue".
Extended use of InterSphinx to link to Python 3 documentation (:issue:`4444`, :issue:`4445`)
System Message: ERROR/3 (<stdin>, line 1002); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1002); backlink
Unknown interpreted text role "issue".
Added support for Sphinx 3.0 and later (:issue:`4475`, :issue:`4480`, :issue:`4496`, :issue:`4503`)
System Message: ERROR/3 (<stdin>, line 1005); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1005); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1005); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1005); backlink
Unknown interpreted text role "issue".
Quality assurance
Removed warnings about using old, removed settings (:issue:`4404`)
System Message: ERROR/3 (<stdin>, line 1012); backlink
Unknown interpreted text role "issue".
Removed a warning about importing :class:`~twisted.internet.testing.StringTransport` from twisted.test.proto_helpers in Twisted 19.7.0 or newer (:issue:`4409`)
System Message: ERROR/3 (<stdin>, line 1014); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1014); backlink
Unknown interpreted text role "issue".
Removed outdated Debian package build files (:issue:`4384`)
System Message: ERROR/3 (<stdin>, line 1018); backlink
Unknown interpreted text role "issue".
Removed :class:`object` usage as a base class (:issue:`4430`)
System Message: ERROR/3 (<stdin>, line 1020); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1020); backlink
Unknown interpreted text role "issue".
Removed code that added support for old versions of Twisted that we no longer support (:issue:`4472`)
System Message: ERROR/3 (<stdin>, line 1022); backlink
Unknown interpreted text role "issue".
Fixed code style issues (:issue:`4468`, :issue:`4469`, :issue:`4471`, :issue:`4481`)
System Message: ERROR/3 (<stdin>, line 1025); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1025); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1025); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1025); backlink
Unknown interpreted text role "issue".
Removed :func:`twisted.internet.defer.returnValue` calls (:issue:`4443`, :issue:`4446`, :issue:`4489`)
System Message: ERROR/3 (<stdin>, line 1028); backlink
Unknown interpreted text role "func".
System Message: ERROR/3 (<stdin>, line 1028); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1028); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1028); backlink
Unknown interpreted text role "issue".
Scrapy 2.0.1 (2020-03-18)
:meth:`Response.follow_all <scrapy.http.Response.follow_all>` now supports an empty URL iterable as input (:issue:`4408`, :issue:`4420`)
System Message: ERROR/3 (<stdin>, line 1037); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 1037); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1037); backlink
Unknown interpreted text role "issue".
Removed top-level :mod:`~twisted.internet.reactor` imports to prevent errors about the wrong Twisted reactor being installed when setting a different Twisted reactor using :setting:`TWISTED_REACTOR` (:issue:`4401`, :issue:`4406`)
System Message: ERROR/3 (<stdin>, line 1040); backlink
Unknown interpreted text role "mod".
System Message: ERROR/3 (<stdin>, line 1040); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1040); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1040); backlink
Unknown interpreted text role "issue".
Fixed tests (:issue:`4422`)
System Message: ERROR/3 (<stdin>, line 1045); backlink
Unknown interpreted text role "issue".
Scrapy 2.0.0 (2020-03-03)
Highlights:
Python 2 support has been removed
:doc:`Partial <topics/coroutines>` :ref:`coroutine syntax <async>` support and :doc:`experimental <topics/asyncio>` :mod:`asyncio` support
System Message: ERROR/3 (<stdin>, line 1056); backlink
Unknown interpreted text role "doc".
System Message: ERROR/3 (<stdin>, line 1056); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1056); backlink
Unknown interpreted text role "doc".
System Message: ERROR/3 (<stdin>, line 1056); backlink
Unknown interpreted text role "mod".
New :meth:`Response.follow_all <scrapy.http.Response.follow_all>` method
System Message: ERROR/3 (<stdin>, line 1058); backlink
Unknown interpreted text role "meth".
:ref:`FTP support <media-pipeline-ftp>` for media pipelines
System Message: ERROR/3 (<stdin>, line 1059); backlink
Unknown interpreted text role "ref".
New :attr:`Response.certificate <scrapy.http.Response.certificate>` attribute
System Message: ERROR/3 (<stdin>, line 1060); backlink
Unknown interpreted text role "attr".
IPv6 support through :setting:`DNS_RESOLVER`
System Message: ERROR/3 (<stdin>, line 1062); backlink
Unknown interpreted text role "setting".
Backward-incompatible changes
Python 2 support has been removed, following Python 2 end-of-life on January 1, 2020 (:issue:`4091`, :issue:`4114`, :issue:`4115`, :issue:`4121`, :issue:`4138`, :issue:`4231`, :issue:`4242`, :issue:`4304`, :issue:`4309`, :issue:`4373`)
System Message: ERROR/3 (<stdin>, line 1067); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1067); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1067); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1067); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1067); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1067); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1067); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1067); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1067); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1067); backlink
Unknown interpreted text role "issue".
Retry gaveups (see :setting:`RETRY_TIMES`) are now logged as errors instead of as debug information (:issue:`3171`, :issue:`3566`)
System Message: ERROR/3 (<stdin>, line 1072); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1072); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1072); backlink
Unknown interpreted text role "issue".
File extensions that :class:`LinkExtractor <scrapy.linkextractors.lxmlhtml.LxmlLinkExtractor>` ignores by default now also include 7z, 7zip, apk, bz2, cdr, dmg, ico, iso, tar, tar.gz, webm, and xz (:issue:`1837`, :issue:`2067`, :issue:`4066`)
System Message: ERROR/3 (<stdin>, line 1075); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1075); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1075); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1075); backlink
Unknown interpreted text role "issue".
The :setting:`METAREFRESH_IGNORE_TAGS` setting is now an empty list by default, following web browser behavior (:issue:`3844`, :issue:`4311`)
System Message: ERROR/3 (<stdin>, line 1081); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1081); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1081); backlink
Unknown interpreted text role "issue".
The :class:`~scrapy.downloadermiddlewares.httpcompression.HttpCompressionMiddleware` now includes spaces after commas in the value of the Accept-Encoding header that it sets, following web browser behavior (:issue:`4293`)
System Message: ERROR/3 (<stdin>, line 1084); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1084); backlink
Unknown interpreted text role "issue".
The __init__ method of custom download handlers (see :setting:`DOWNLOAD_HANDLERS`) or subclasses of the following downloader handlers no longer receives a settings parameter:
System Message: ERROR/3 (<stdin>, line 1089); backlink
Unknown interpreted text role "setting".
:class:`scrapy.core.downloader.handlers.datauri.DataURIDownloadHandler`
System Message: ERROR/3 (<stdin>, line 1093); backlink
Unknown interpreted text role "class".
:class:`scrapy.core.downloader.handlers.file.FileDownloadHandler`
System Message: ERROR/3 (<stdin>, line 1095); backlink
Unknown interpreted text role "class".
Use the from_settings or from_crawler class methods to expose such a parameter to your custom download handlers.
System Message: ERROR/3 (<stdin>, line 1100); backlink
Unknown interpreted text role "issue".
We have refactored the :class:`scrapy.core.scheduler.Scheduler` class and related queue classes (see :setting:`SCHEDULER_PRIORITY_QUEUE`, :setting:`SCHEDULER_DISK_QUEUE` and :setting:`SCHEDULER_MEMORY_QUEUE`) to make it easier to implement custom scheduler queue classes. See :ref:`2-0-0-scheduler-queue-changes` below for details.
System Message: ERROR/3 (<stdin>, line 1102); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1102); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1102); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1102); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1102); backlink
Unknown interpreted text role "ref".
Overridden settings are now logged in a different format. This is more in line with similar information logged at startup (:issue:`4199`)
System Message: ERROR/3 (<stdin>, line 1108); backlink
Unknown interpreted text role "issue".
Deprecation removals
The :ref:`Scrapy shell <topics-shell>` no longer provides a sel proxy object, use :meth:`response.selector <scrapy.http.Response.selector>` instead (:issue:`4347`)
System Message: ERROR/3 (<stdin>, line 1117); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1117); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 1117); backlink
Unknown interpreted text role "issue".
LevelDB support has been removed (:issue:`4112`)
System Message: ERROR/3 (<stdin>, line 1121); backlink
Unknown interpreted text role "issue".
The following functions have been removed from :mod:`scrapy.utils.python`: isbinarytext, is_writable, setattr_default, stringify_dict (:issue:`4362`)
System Message: ERROR/3 (<stdin>, line 1123); backlink
Unknown interpreted text role "mod".
System Message: ERROR/3 (<stdin>, line 1123); backlink
Unknown interpreted text role "issue".
Deprecations
Using environment variables prefixed with SCRAPY_ to override settings is deprecated (:issue:`4300`, :issue:`4374`, :issue:`4375`)
System Message: ERROR/3 (<stdin>, line 1131); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1131); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1131); backlink
Unknown interpreted text role "issue".
:class:`scrapy.linkextractors.FilteringLinkExtractor` is deprecated, use :class:`scrapy.linkextractors.LinkExtractor <scrapy.linkextractors.lxmlhtml.LxmlLinkExtractor>` instead (:issue:`4045`)
System Message: ERROR/3 (<stdin>, line 1134); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1134); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1134); backlink
Unknown interpreted text role "issue".
The noconnect query string argument of proxy URLs is deprecated and should be removed from proxy URLs (:issue:`4198`)
System Message: ERROR/3 (<stdin>, line 1138); backlink
Unknown interpreted text role "issue".
The :meth:`next <scrapy.utils.python.MutableChain.next>` method of :class:`scrapy.utils.python.MutableChain` is deprecated, use the global :func:`next` function or :meth:`MutableChain.__next__ <scrapy.utils.python.MutableChain.__next__>` instead (:issue:`4153`)
System Message: ERROR/3 (<stdin>, line 1141); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 1141); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1141); backlink
Unknown interpreted text role "func".
System Message: ERROR/3 (<stdin>, line 1141); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 1141); backlink
Unknown interpreted text role "issue".
New features
Added :doc:`partial support <topics/coroutines>` for Python’s :ref:`coroutine syntax <async>` and :doc:`experimental support <topics/asyncio>` for :mod:`asyncio` and :mod:`asyncio`-powered libraries (:issue:`4010`, :issue:`4259`, :issue:`4269`, :issue:`4270`, :issue:`4271`, :issue:`4316`, :issue:`4318`)
System Message: ERROR/3 (<stdin>, line 1150); backlink
Unknown interpreted text role "doc".
System Message: ERROR/3 (<stdin>, line 1150); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1150); backlink
Unknown interpreted text role "doc".
System Message: ERROR/3 (<stdin>, line 1150); backlink
Unknown interpreted text role "mod".
System Message: ERROR/3 (<stdin>, line 1150); backlink
Unknown interpreted text role "mod".
System Message: ERROR/3 (<stdin>, line 1150); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1150); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1150); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1150); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1150); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1150); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1150); backlink
Unknown interpreted text role "issue".
The new :meth:`Response.follow_all <scrapy.http.Response.follow_all>` method offers the same functionality as :meth:`Response.follow <scrapy.http.Response.follow>` but supports an iterable of URLs as input and returns an iterable of requests (:issue:`2582`, :issue:`4057`, :issue:`4286`)
System Message: ERROR/3 (<stdin>, line 1156); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 1156); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 1156); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1156); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1156); backlink
Unknown interpreted text role "issue".
:ref:`Media pipelines <topics-media-pipeline>` now support :ref:`FTP storage <media-pipeline-ftp>` (:issue:`3928`, :issue:`3961`)
System Message: ERROR/3 (<stdin>, line 1162); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1162); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1162); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1162); backlink
Unknown interpreted text role "issue".
The new :attr:`Response.certificate <scrapy.http.Response.certificate>` attribute exposes the SSL certificate of the server as a :class:`twisted.internet.ssl.Certificate` object for HTTPS responses (:issue:`2726`, :issue:`4054`)
System Message: ERROR/3 (<stdin>, line 1165); backlink
Unknown interpreted text role "attr".
System Message: ERROR/3 (<stdin>, line 1165); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1165); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1165); backlink
Unknown interpreted text role "issue".
A new :setting:`DNS_RESOLVER` setting allows enabling IPv6 support (:issue:`1031`, :issue:`4227`)
System Message: ERROR/3 (<stdin>, line 1170); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1170); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1170); backlink
Unknown interpreted text role "issue".
A new :setting:`SCRAPER_SLOT_MAX_ACTIVE_SIZE` setting allows configuring the existing soft limit that pauses request downloads when the total response data being processed is too high (:issue:`1410`, :issue:`3551`)
System Message: ERROR/3 (<stdin>, line 1173); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1173); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1173); backlink
Unknown interpreted text role "issue".
A new :setting:`TWISTED_REACTOR` setting allows customizing the :mod:`~twisted.internet.reactor` that Scrapy uses, allowing to :doc:`enable asyncio support <topics/asyncio>` or deal with a :ref:`common macOS issue <faq-specific-reactor>` (:issue:`2905`, :issue:`4294`)
System Message: ERROR/3 (<stdin>, line 1177); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1177); backlink
Unknown interpreted text role "mod".
System Message: ERROR/3 (<stdin>, line 1177); backlink
Unknown interpreted text role "doc".
System Message: ERROR/3 (<stdin>, line 1177); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1177); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1177); backlink
Unknown interpreted text role "issue".
Scheduler disk and memory queues may now use the class methods from_crawler or from_settings (:issue:`3884`)
System Message: ERROR/3 (<stdin>, line 1183); backlink
Unknown interpreted text role "issue".
The new :attr:`Response.cb_kwargs <scrapy.http.Response.cb_kwargs>` attribute serves as a shortcut for :attr:`Response.request.cb_kwargs <scrapy.http.Request.cb_kwargs>` (:issue:`4331`)
System Message: ERROR/3 (<stdin>, line 1186); backlink
Unknown interpreted text role "attr".
System Message: ERROR/3 (<stdin>, line 1186); backlink
Unknown interpreted text role "attr".
System Message: ERROR/3 (<stdin>, line 1186); backlink
Unknown interpreted text role "issue".
:meth:`Response.follow <scrapy.http.Response.follow>` now supports a flags parameter, for consistency with :class:`~scrapy.http.Request` (:issue:`4277`, :issue:`4279`)
System Message: ERROR/3 (<stdin>, line 1190); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 1190); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1190); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1190); backlink
Unknown interpreted text role "issue".
:ref:`Item loader processors <topics-loaders-processors>` can now be regular functions, they no longer need to be methods (:issue:`3899`)
System Message: ERROR/3 (<stdin>, line 1194); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1194); backlink
Unknown interpreted text role "issue".
:class:`~scrapy.spiders.Rule` now accepts an errback parameter (:issue:`4000`)
System Message: ERROR/3 (<stdin>, line 1197); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1197); backlink
Unknown interpreted text role "issue".
:class:`~scrapy.http.Request` no longer requires a callback parameter when an errback parameter is specified (:issue:`3586`, :issue:`4008`)
System Message: ERROR/3 (<stdin>, line 1200); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1200); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1200); backlink
Unknown interpreted text role "issue".
:class:`~scrapy.logformatter.LogFormatter` now supports some additional methods:
System Message: ERROR/3 (<stdin>, line 1203); backlink
Unknown interpreted text role "class".
:class:`~scrapy.logformatter.LogFormatter.download_error` for download errors
System Message: ERROR/3 (<stdin>, line 1206); backlink
Unknown interpreted text role "class".
:class:`~scrapy.logformatter.LogFormatter.item_error` for exceptions raised during item processing by :ref:`item pipelines <topics-item-pipeline>`
System Message: ERROR/3 (<stdin>, line 1209); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1209); backlink
Unknown interpreted text role "ref".
:class:`~scrapy.logformatter.LogFormatter.spider_error` for exceptions raised from :ref:`spider callbacks <topics-spiders>`
System Message: ERROR/3 (<stdin>, line 1213); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1213); backlink
Unknown interpreted text role "ref".
(:issue:`374`, :issue:`3986`, :issue:`3989`, :issue:`4176`, :issue:`4188`)
System Message: ERROR/3 (<stdin>, line 1216); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1216); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1216); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1216); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1216); backlink
Unknown interpreted text role "issue".
The :setting:`FEED_URI` setting now supports :class:`pathlib.Path` values (:issue:`3731`, :issue:`4074`)
System Message: ERROR/3 (<stdin>, line 1218); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1218); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1218); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1218); backlink
Unknown interpreted text role "issue".
A new :signal:`request_left_downloader` signal is sent when a request leaves the downloader (:issue:`4303`)
System Message: ERROR/3 (<stdin>, line 1221); backlink
Unknown interpreted text role "signal".
System Message: ERROR/3 (<stdin>, line 1221); backlink
Unknown interpreted text role "issue".
Scrapy logs a warning when it detects a request callback or errback that uses yield but also returns a value, since the returned value would be lost (:issue:`3484`, :issue:`3869`)
System Message: ERROR/3 (<stdin>, line 1224); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1224); backlink
Unknown interpreted text role "issue".
:class:`~scrapy.spiders.Spider` objects now raise an :exc:`AttributeError` exception if they do not have a :class:`~scrapy.spiders.Spider.start_urls` attribute nor reimplement :class:`~scrapy.spiders.Spider.start_requests`, but have a start_url attribute (:issue:`4133`, :issue:`4170`)
System Message: ERROR/3 (<stdin>, line 1228); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1228); backlink
Unknown interpreted text role "exc".
System Message: ERROR/3 (<stdin>, line 1228); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1228); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1228); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1228); backlink
Unknown interpreted text role "issue".
:class:`~scrapy.exporters.BaseItemExporter` subclasses may now use super().__init__(**kwargs) instead of self._configure(kwargs) in their __init__ method, passing dont_fail=True to the parent __init__ method if needed, and accessing kwargs at self._kwargs after calling their parent __init__ method (:issue:`4193`, :issue:`4370`)
System Message: ERROR/3 (<stdin>, line 1233); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1233); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1233); backlink
Unknown interpreted text role "issue".
A new keep_fragments parameter of :func:`scrapy.utils.request.request_fingerprint` allows to generate different fingerprints for requests with different fragments in their URL (:issue:`4104`)
System Message: ERROR/3 (<stdin>, line 1240); backlink
Unknown interpreted text role "func".
System Message: ERROR/3 (<stdin>, line 1240); backlink
Unknown interpreted text role "issue".
Download handlers (see :setting:`DOWNLOAD_HANDLERS`) may now use the from_settings and from_crawler class methods that other Scrapy components already supported (:issue:`4126`)
System Message: ERROR/3 (<stdin>, line 1245); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1245); backlink
Unknown interpreted text role "issue".
:class:`scrapy.utils.python.MutableChain.__iter__` now returns self, allowing it to be used as a sequence (:issue:`4153`)
System Message: ERROR/3 (<stdin>, line 1249); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1249); backlink
Unknown interpreted text role "issue".
Bug fixes
The :command:`crawl` command now also exits with exit code 1 when an exception happens before the crawling starts (:issue:`4175`, :issue:`4207`)
System Message: ERROR/3 (<stdin>, line 1257); backlink
Unknown interpreted text role "command".
System Message: ERROR/3 (<stdin>, line 1257); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1257); backlink
Unknown interpreted text role "issue".
:class:`LinkExtractor.extract_links <scrapy.linkextractors.lxmlhtml.LxmlLinkExtractor.extract_links>` no longer re-encodes the query string or URLs from non-UTF-8 responses in UTF-8 (:issue:`998`, :issue:`1403`, :issue:`1949`, :issue:`4321`)
System Message: ERROR/3 (<stdin>, line 1260); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1260); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1260); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1260); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1260); backlink
Unknown interpreted text role "issue".
The first spider middleware (see :setting:`SPIDER_MIDDLEWARES`) now also processes exceptions raised from callbacks that are generators (:issue:`4260`, :issue:`4272`)
System Message: ERROR/3 (<stdin>, line 1265); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1265); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1265); backlink
Unknown interpreted text role "issue".
Redirects to URLs starting with 3 slashes (///) are now supported (:issue:`4032`, :issue:`4042`)
System Message: ERROR/3 (<stdin>, line 1269); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1269); backlink
Unknown interpreted text role "issue".
:class:`~scrapy.http.Request` no longer accepts strings as url simply because they have a colon (:issue:`2552`, :issue:`4094`)
System Message: ERROR/3 (<stdin>, line 1272); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1272); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1272); backlink
Unknown interpreted text role "issue".
The correct encoding is now used for attach names in :class:`~scrapy.mail.MailSender` (:issue:`4229`, :issue:`4239`)
System Message: ERROR/3 (<stdin>, line 1275); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1275); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1275); backlink
Unknown interpreted text role "issue".
:class:`~scrapy.dupefilters.RFPDupeFilter`, the default :setting:`DUPEFILTER_CLASS`, no longer writes an extra \r character on each line in Windows, which made the size of the requests.seen file unnecessarily large on that platform (:issue:`4283`)
System Message: ERROR/3 (<stdin>, line 1278); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1278); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1278); backlink
Unknown interpreted text role "issue".
Z shell auto-completion now looks for .html files, not .http files, and covers the -h command-line switch (:issue:`4122`, :issue:`4291`)
System Message: ERROR/3 (<stdin>, line 1283); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1283); backlink
Unknown interpreted text role "issue".
Adding items to a :class:`scrapy.utils.datatypes.LocalCache` object without a limit defined no longer raises a :exc:`TypeError` exception (:issue:`4123`)
System Message: ERROR/3 (<stdin>, line 1286); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1286); backlink
Unknown interpreted text role "exc".
System Message: ERROR/3 (<stdin>, line 1286); backlink
Unknown interpreted text role "issue".
Fixed a typo in the message of the :exc:`ValueError` exception raised when :func:`scrapy.utils.misc.create_instance` gets both settings and crawler set to None (:issue:`4128`)
System Message: ERROR/3 (<stdin>, line 1290); backlink
Unknown interpreted text role "exc".
System Message: ERROR/3 (<stdin>, line 1290); backlink
Unknown interpreted text role "func".
System Message: ERROR/3 (<stdin>, line 1290); backlink
Unknown interpreted text role "issue".
Documentation
API documentation now links to an online, syntax-highlighted view of the corresponding source code (:issue:`4148`)
System Message: ERROR/3 (<stdin>, line 1298); backlink
Unknown interpreted text role "issue".
Links to unexisting documentation pages now allow access to the sidebar (:issue:`4152`, :issue:`4169`)
System Message: ERROR/3 (<stdin>, line 1301); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1301); backlink
Unknown interpreted text role "issue".
Cross-references within our documentation now display a tooltip when hovered (:issue:`4173`, :issue:`4183`)
System Message: ERROR/3 (<stdin>, line 1304); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1304); backlink
Unknown interpreted text role "issue".
Improved the documentation about :meth:`LinkExtractor.extract_links <scrapy.linkextractors.lxmlhtml.LxmlLinkExtractor.extract_links>` and simplified :ref:`topics-link-extractors` (:issue:`4045`)
System Message: ERROR/3 (<stdin>, line 1307); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 1307); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1307); backlink
Unknown interpreted text role "issue".
Clarified how :class:`ItemLoader.item <scrapy.loader.ItemLoader.item>` works (:issue:`3574`, :issue:`4099`)
System Message: ERROR/3 (<stdin>, line 1311); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1311); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1311); backlink
Unknown interpreted text role "issue".
Clarified that :func:`logging.basicConfig` should not be used when also using :class:`~scrapy.crawler.CrawlerProcess` (:issue:`2149`, :issue:`2352`, :issue:`3146`, :issue:`3960`)
System Message: ERROR/3 (<stdin>, line 1314); backlink
Unknown interpreted text role "func".
System Message: ERROR/3 (<stdin>, line 1314); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1314); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1314); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1314); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1314); backlink
Unknown interpreted text role "issue".
Clarified the requirements for :class:`~scrapy.http.Request` objects :ref:`when using persistence <request-serialization>` (:issue:`4124`, :issue:`4139`)
System Message: ERROR/3 (<stdin>, line 1318); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1318); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1318); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1318); backlink
Unknown interpreted text role "issue".
Clarified how to install a :ref:`custom image pipeline <media-pipeline-example>` (:issue:`4034`, :issue:`4252`)
System Message: ERROR/3 (<stdin>, line 1322); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1322); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1322); backlink
Unknown interpreted text role "issue".
Fixed the signatures of the file_path method in :ref:`media pipeline <topics-media-pipeline>` examples (:issue:`4290`)
System Message: ERROR/3 (<stdin>, line 1325); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1325); backlink
Unknown interpreted text role "issue".
Covered a backward-incompatible change in Scrapy 1.7.0 affecting custom :class:`scrapy.core.scheduler.Scheduler` subclasses (:issue:`4274`)
System Message: ERROR/3 (<stdin>, line 1328); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1328); backlink
Unknown interpreted text role "issue".
Improved the README.rst and CODE_OF_CONDUCT.md files (:issue:`4059`)
System Message: ERROR/3 (<stdin>, line 1331); backlink
Unknown interpreted text role "issue".
Documentation examples are now checked as part of our test suite and we have fixed some of the issues detected (:issue:`4142`, :issue:`4146`, :issue:`4171`, :issue:`4184`, :issue:`4190`)
System Message: ERROR/3 (<stdin>, line 1334); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1334); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1334); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1334); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1334); backlink
Unknown interpreted text role "issue".
Fixed logic issues, broken links and typos (:issue:`4247`, :issue:`4258`, :issue:`4282`, :issue:`4288`, :issue:`4305`, :issue:`4308`, :issue:`4323`, :issue:`4338`, :issue:`4359`, :issue:`4361`)
System Message: ERROR/3 (<stdin>, line 1338); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1338); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1338); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1338); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1338); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1338); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1338); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1338); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1338); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1338); backlink
Unknown interpreted text role "issue".
Improved consistency when referring to the __init__ method of an object (:issue:`4086`, :issue:`4088`)
System Message: ERROR/3 (<stdin>, line 1342); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1342); backlink
Unknown interpreted text role "issue".
Fixed an inconsistency between code and output in :ref:`intro-overview` (:issue:`4213`)
System Message: ERROR/3 (<stdin>, line 1345); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1345); backlink
Unknown interpreted text role "issue".
Extended :mod:`~sphinx.ext.intersphinx` usage (:issue:`4147`, :issue:`4172`, :issue:`4185`, :issue:`4194`, :issue:`4197`)
System Message: ERROR/3 (<stdin>, line 1348); backlink
Unknown interpreted text role "mod".
System Message: ERROR/3 (<stdin>, line 1348); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1348); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1348); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1348); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1348); backlink
Unknown interpreted text role "issue".
We now use a recent version of Python to build the documentation (:issue:`4140`, :issue:`4249`)
System Message: ERROR/3 (<stdin>, line 1351); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1351); backlink
Unknown interpreted text role "issue".
Cleaned up documentation (:issue:`4143`, :issue:`4275`)
System Message: ERROR/3 (<stdin>, line 1354); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1354); backlink
Unknown interpreted text role "issue".
Quality assurance
Re-enabled proxy CONNECT tests (:issue:`2545`, :issue:`4114`)
System Message: ERROR/3 (<stdin>, line 1360); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1360); backlink
Unknown interpreted text role "issue".
Added Bandit security checks to our test suite (:issue:`4162`, :issue:`4181`)
System Message: ERROR/3 (<stdin>, line 1362); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1362); backlink
Unknown interpreted text role "issue".
Added Flake8 style checks to our test suite and applied many of the corresponding changes (:issue:`3944`, :issue:`3945`, :issue:`4137`, :issue:`4157`, :issue:`4167`, :issue:`4174`, :issue:`4186`, :issue:`4195`, :issue:`4238`, :issue:`4246`, :issue:`4355`, :issue:`4360`, :issue:`4365`)
System Message: ERROR/3 (<stdin>, line 1365); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1365); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1365); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1365); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1365); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1365); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1365); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1365); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1365); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1365); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1365); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1365); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1365); backlink
Unknown interpreted text role "issue".
Improved test coverage (:issue:`4097`, :issue:`4218`, :issue:`4236`)
System Message: ERROR/3 (<stdin>, line 1370); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1370); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1370); backlink
Unknown interpreted text role "issue".
Started reporting slowest tests, and improved the performance of some of them (:issue:`4163`, :issue:`4164`)
System Message: ERROR/3 (<stdin>, line 1372); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1372); backlink
Unknown interpreted text role "issue".
Fixed broken tests and refactored some tests (:issue:`4014`, :issue:`4095`, :issue:`4244`, :issue:`4268`, :issue:`4372`)
System Message: ERROR/3 (<stdin>, line 1375); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1375); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1375); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1375); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1375); backlink
Unknown interpreted text role "issue".
Modified the :doc:`tox <tox:index>` configuration to allow running tests with any Python version, run Bandit and Flake8 tests by default, and enforce a minimum tox version programmatically (:issue:`4179`)
System Message: ERROR/3 (<stdin>, line 1378); backlink
Unknown interpreted text role "doc".
System Message: ERROR/3 (<stdin>, line 1378); backlink
Unknown interpreted text role "issue".
Cleaned up code (:issue:`3937`, :issue:`4208`, :issue:`4209`, :issue:`4210`, :issue:`4212`, :issue:`4369`, :issue:`4376`, :issue:`4378`)
System Message: ERROR/3 (<stdin>, line 1382); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1382); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1382); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1382); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1382); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1382); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1382); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1382); backlink
Unknown interpreted text role "issue".
Changes to scheduler queue classes
The following changes may impact any custom queue classes of all types:
The push method no longer receives a second positional parameter containing request.priority * -1. If you need that value, get it from the first positional parameter, request, instead, or use the new :meth:`~scrapy.core.scheduler.ScrapyPriorityQueue.priority` method in :class:`scrapy.core.scheduler.ScrapyPriorityQueue` subclasses.
System Message: ERROR/3 (<stdin>, line 1396); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 1396); backlink
Unknown interpreted text role "class".
The following changes may impact custom priority queue classes:
In the __init__ method or the from_crawler or from_settings class methods:
The parameter that used to contain a factory function, qfactory, is now passed as a keyword parameter named downstream_queue_cls.
A new keyword parameter has been added: key. It is a string that is always an empty string for memory queues and indicates the :setting:`JOB_DIR` value for disk queues.
System Message: ERROR/3 (<stdin>, line 1412); backlink
Unknown interpreted text role "setting".
The parameter for disk queues that contains data from the previous crawl, startprios or slot_startprios, is now passed as a keyword parameter named startprios.
The serialize parameter is no longer passed. The disk queue class must take care of request serialization on its own before writing to disk, using the :func:`~scrapy.utils.reqser.request_to_dict` and :func:`~scrapy.utils.reqser.request_from_dict` functions from the :mod:`scrapy.utils.reqser` module.
System Message: ERROR/3 (<stdin>, line 1420); backlink
Unknown interpreted text role "func".
System Message: ERROR/3 (<stdin>, line 1420); backlink
Unknown interpreted text role "func".
System Message: ERROR/3 (<stdin>, line 1420); backlink
Unknown interpreted text role "mod".
The following changes may impact custom disk and memory queue classes:
- The signature of the __init__ method is now __init__(self, crawler, key).
The following changes affect specifically the :class:`~scrapy.core.scheduler.ScrapyPriorityQueue` and :class:`~scrapy.core.scheduler.DownloaderAwarePriorityQueue` classes from :mod:`scrapy.core.scheduler` and may affect subclasses:
System Message: ERROR/3 (<stdin>, line 1432); backlink
Unknown interpreted text role "class".System Message: ERROR/3 (<stdin>, line 1432); backlink
Unknown interpreted text role "class".System Message: ERROR/3 (<stdin>, line 1432); backlink
Unknown interpreted text role "mod".In the __init__ method, most of the changes described above apply.
__init__ may still receive all parameters as positional parameters, however:
downstream_queue_cls, which replaced qfactory, must be instantiated differently.
qfactory was instantiated with a priority value (integer).
Instances of downstream_queue_cls should be created using the new :meth:`ScrapyPriorityQueue.qfactory <scrapy.core.scheduler.ScrapyPriorityQueue.qfactory>` or :meth:`DownloaderAwarePriorityQueue.pqfactory <scrapy.core.scheduler.DownloaderAwarePriorityQueue.pqfactory>` methods.
System Message: ERROR/3 (<stdin>, line 1447); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 1447); backlink
Unknown interpreted text role "meth".
The new key parameter displaced the startprios parameter 1 position to the right.
The following class attributes have been added:
:attr:`~scrapy.core.scheduler.ScrapyPriorityQueue.crawler`
System Message: ERROR/3 (<stdin>, line 1459); backlink
Unknown interpreted text role "attr".
:attr:`~scrapy.core.scheduler.ScrapyPriorityQueue.downstream_queue_cls` (details above)
System Message: ERROR/3 (<stdin>, line 1461); backlink
Unknown interpreted text role "attr".
:attr:`~scrapy.core.scheduler.ScrapyPriorityQueue.key` (details above)
System Message: ERROR/3 (<stdin>, line 1464); backlink
Unknown interpreted text role "attr".
The serialize attribute has been removed (details above)
The following changes affect specifically the :class:`~scrapy.core.scheduler.ScrapyPriorityQueue` class and may affect subclasses:
System Message: ERROR/3 (<stdin>, line 1468); backlink
Unknown interpreted text role "class".A new :meth:`~scrapy.core.scheduler.ScrapyPriorityQueue.priority` method has been added which, given a request, returns request.priority * -1.
System Message: ERROR/3 (<stdin>, line 1472); backlink
Unknown interpreted text role "meth".
It is used in :meth:`~scrapy.core.scheduler.ScrapyPriorityQueue.push` to make up for the removal of its priority parameter.
System Message: ERROR/3 (<stdin>, line 1476); backlink
Unknown interpreted text role "meth".
The spider attribute has been removed. Use :attr:`crawler.spider <scrapy.core.scheduler.ScrapyPriorityQueue.crawler>` instead.
System Message: ERROR/3 (<stdin>, line 1479); backlink
Unknown interpreted text role "attr".
The following changes affect specifically the :class:`~scrapy.core.scheduler.DownloaderAwarePriorityQueue` class and may affect subclasses:
System Message: ERROR/3 (<stdin>, line 1483); backlink
Unknown interpreted text role "class".A new :attr:`~scrapy.core.scheduler.DownloaderAwarePriorityQueue.pqueues` attribute offers a mapping of downloader slot names to the corresponding instances of :attr:`~scrapy.core.scheduler.DownloaderAwarePriorityQueue.downstream_queue_cls`.
System Message: ERROR/3 (<stdin>, line 1487); backlink
Unknown interpreted text role "attr".
System Message: ERROR/3 (<stdin>, line 1487); backlink
Unknown interpreted text role "attr".
System Message: ERROR/3 (<stdin>, line 1492); backlink
Unknown interpreted text role "issue".Scrapy 1.8.1 (2021-10-05)
Security bug fix:
If you use :class:`~scrapy.downloadermiddlewares.httpauth.HttpAuthMiddleware` (i.e. the http_user and http_pass spider attributes) for HTTP authentication, any request exposes your credentials to the request target.
System Message: ERROR/3 (<stdin>, line 1502); backlink
Unknown interpreted text role "class".
To prevent unintended exposure of authentication credentials to unintended domains, you must now additionally set a new, additional spider attribute, http_auth_domain, and point it to the specific domain to which the authentication credentials must be sent.
If the http_auth_domain spider attribute is not set, the domain of the first request will be considered the HTTP authentication target, and authentication credentials will only be sent in requests targeting that domain.
If you need to send the same HTTP authentication credentials to multiple domains, you can use :func:`w3lib.http.basic_auth_header` instead to set the value of the Authorization header of your requests.
System Message: ERROR/3 (<stdin>, line 1517); backlink
Unknown interpreted text role "func".
If you really want your spider to send the same HTTP authentication credentials to any domain, set the http_auth_domain spider attribute to None.
Finally, if you are a user of scrapy-splash, know that this version of Scrapy breaks compatibility with scrapy-splash 0.7.2 and earlier. You will need to upgrade scrapy-splash to a greater version for it to continue to work.
Scrapy 1.8.0 (2019-10-28)
Highlights:
Dropped Python 3.4 support and updated minimum requirements; made Python 3.8 support official
New :meth:`Request.from_curl <scrapy.http.Request.from_curl>` class method
System Message: ERROR/3 (<stdin>, line 1542); backlink
Unknown interpreted text role "meth".
New :setting:`ROBOTSTXT_PARSER` and :setting:`ROBOTSTXT_USER_AGENT` settings
System Message: ERROR/3 (<stdin>, line 1543); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1543); backlink
Unknown interpreted text role "setting".
New :setting:`DOWNLOADER_CLIENT_TLS_CIPHERS` and :setting:`DOWNLOADER_CLIENT_TLS_VERBOSE_LOGGING` settings
System Message: ERROR/3 (<stdin>, line 1544); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1544); backlink
Unknown interpreted text role "setting".
Backward-incompatible changes
Python 3.4 is no longer supported, and some of the minimum requirements of Scrapy have also changed:
:doc:`cssselect <cssselect:index>` 0.9.1
System Message: ERROR/3 (<stdin>, line 1553); backlink
Unknown interpreted text role "doc".
cryptography 2.0
lxml 3.5.0
pyOpenSSL 16.2.0
queuelib 1.4.2
service_identity 16.0.0
six 1.10.0
Twisted 17.9.0 (16.0.0 with Python 2)
zope.interface 4.1.3
System Message: ERROR/3 (<stdin>, line 1563); backlink
Unknown interpreted text role "issue".
JSONRequest is now called :class:`~scrapy.http.JsonRequest` for consistency with similar classes (:issue:`3929`, :issue:`3982`)
System Message: ERROR/3 (<stdin>, line 1565); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1565); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1565); backlink
Unknown interpreted text role "issue".
If you are using a custom context factory (:setting:`DOWNLOADER_CLIENTCONTEXTFACTORY`), its __init__ method must accept two new parameters: tls_verbose_logging and tls_ciphers (:issue:`2111`, :issue:`3392`, :issue:`3442`, :issue:`3450`)
System Message: ERROR/3 (<stdin>, line 1568); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1568); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1568); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1568); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1568); backlink
Unknown interpreted text role "issue".
:class:`~scrapy.loader.ItemLoader` now turns the values of its input item into lists:
System Message: ERROR/3 (<stdin>, line 1573); backlink
Unknown interpreted text role "class".
>>> item = MyItem() >>> item['field'] = 'value1' >>> loader = ItemLoader(item=item) >>> item['field'] ['value1']
This is needed to allow adding values to existing fields (loader.add_value('field', 'value2')).
(:issue:`3804`, :issue:`3819`, :issue:`3897`, :issue:`3976`, :issue:`3998`, :issue:`4036`)
System Message: ERROR/3 (<stdin>, line 1585); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1585); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1585); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1585); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1585); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1585); backlink
Unknown interpreted text role "issue".
See also :ref:`1.8-deprecation-removals` below.
System Message: ERROR/3 (<stdin>, line 1588); backlink
Unknown interpreted text role "ref".New features
A new :meth:`Request.from_curl <scrapy.http.Request.from_curl>` class method allows :ref:`creating a request from a cURL command <requests-from-curl>` (:issue:`2985`, :issue:`3862`)
System Message: ERROR/3 (<stdin>, line 1594); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 1594); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1594); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1594); backlink
Unknown interpreted text role "issue".
A new :setting:`ROBOTSTXT_PARSER` setting allows choosing which robots.txt parser to use. It includes built-in support for :ref:`RobotFileParser <python-robotfileparser>`, :ref:`Protego <protego-parser>` (default), :ref:`Reppy <reppy-parser>`, and :ref:`Robotexclusionrulesparser <rerp-parser>`, and allows you to :ref:`implement support for additional parsers <support-for-new-robots-parser>` (:issue:`754`, :issue:`2669`, :issue:`3796`, :issue:`3935`, :issue:`3969`, :issue:`4006`)
System Message: ERROR/3 (<stdin>, line 1598); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1598); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1598); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1598); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1598); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1598); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1598); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1598); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1598); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1598); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1598); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1598); backlink
Unknown interpreted text role "issue".
A new :setting:`ROBOTSTXT_USER_AGENT` setting allows defining a separate user agent string to use for robots.txt parsing (:issue:`3931`, :issue:`3966`)
System Message: ERROR/3 (<stdin>, line 1607); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1607); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1607); backlink
Unknown interpreted text role "issue".
:class:`~scrapy.spiders.Rule` no longer requires a :class:`LinkExtractor <scrapy.linkextractors.lxmlhtml.LxmlLinkExtractor>` parameter (:issue:`781`, :issue:`4016`)
System Message: ERROR/3 (<stdin>, line 1611); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1611); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1611); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1611); backlink
Unknown interpreted text role "issue".
Use the new :setting:`DOWNLOADER_CLIENT_TLS_CIPHERS` setting to customize the TLS/SSL ciphers used by the default HTTP/1.1 downloader (:issue:`3392`, :issue:`3442`)
System Message: ERROR/3 (<stdin>, line 1615); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1615); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1615); backlink
Unknown interpreted text role "issue".
Set the new :setting:`DOWNLOADER_CLIENT_TLS_VERBOSE_LOGGING` setting to True to enable debug-level messages about TLS connection parameters after establishing HTTPS connections (:issue:`2111`, :issue:`3450`)
System Message: ERROR/3 (<stdin>, line 1619); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1619); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1619); backlink
Unknown interpreted text role "issue".
Callbacks that receive keyword arguments (see :attr:`Request.cb_kwargs <scrapy.http.Request.cb_kwargs>`) can now be tested using the new :class:`@cb_kwargs <scrapy.contracts.default.CallbackKeywordArgumentsContract>` :ref:`spider contract <topics-contracts>` (:issue:`3985`, :issue:`3988`)
System Message: ERROR/3 (<stdin>, line 1623); backlink
Unknown interpreted text role "attr".
System Message: ERROR/3 (<stdin>, line 1623); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1623); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1623); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1623); backlink
Unknown interpreted text role "issue".
When a :class:`@scrapes <scrapy.contracts.default.ScrapesContract>` spider contract fails, all missing fields are now reported (:issue:`766`, :issue:`3939`)
System Message: ERROR/3 (<stdin>, line 1629); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1629); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1629); backlink
Unknown interpreted text role "issue".
:ref:`Custom log formats <custom-log-formats>` can now drop messages by having the corresponding methods of the configured :setting:`LOG_FORMATTER` return None (:issue:`3984`, :issue:`3987`)
System Message: ERROR/3 (<stdin>, line 1633); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1633); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1633); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1633); backlink
Unknown interpreted text role "issue".
A much improved completion definition is now available for Zsh (:issue:`4069`)
System Message: ERROR/3 (<stdin>, line 1637); backlink
Unknown interpreted text role "issue".
Bug fixes
:meth:`ItemLoader.load_item() <scrapy.loader.ItemLoader.load_item>` no longer makes later calls to :meth:`ItemLoader.get_output_value() <scrapy.loader.ItemLoader.get_output_value>` or :meth:`ItemLoader.load_item() <scrapy.loader.ItemLoader.load_item>` return empty data (:issue:`3804`, :issue:`3819`, :issue:`3897`, :issue:`3976`, :issue:`3998`, :issue:`4036`)
System Message: ERROR/3 (<stdin>, line 1644); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 1644); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 1644); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 1644); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1644); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1644); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1644); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1644); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1644); backlink
Unknown interpreted text role "issue".
Fixed :class:`~scrapy.statscollectors.DummyStatsCollector` raising a :exc:`TypeError` exception (:issue:`4007`, :issue:`4052`)
System Message: ERROR/3 (<stdin>, line 1651); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1651); backlink
Unknown interpreted text role "exc".
System Message: ERROR/3 (<stdin>, line 1651); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1651); backlink
Unknown interpreted text role "issue".
:meth:`FilesPipeline.file_path <scrapy.pipelines.files.FilesPipeline.file_path>` and :meth:`ImagesPipeline.file_path <scrapy.pipelines.images.ImagesPipeline.file_path>` no longer choose file extensions that are not registered with IANA (:issue:`1287`, :issue:`3953`, :issue:`3954`)
System Message: ERROR/3 (<stdin>, line 1654); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 1654); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 1654); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1654); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1654); backlink
Unknown interpreted text role "issue".
When using botocore to persist files in S3, all botocore-supported headers are properly mapped now (:issue:`3904`, :issue:`3905`)
System Message: ERROR/3 (<stdin>, line 1661); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1661); backlink
Unknown interpreted text role "issue".
FTP passwords in :setting:`FEED_URI` containing percent-escaped characters are now properly decoded (:issue:`3941`)
System Message: ERROR/3 (<stdin>, line 1664); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1664); backlink
Unknown interpreted text role "issue".
A memory-handling and error-handling issue in :func:`scrapy.utils.ssl.get_temp_key_info` has been fixed (:issue:`3920`)
System Message: ERROR/3 (<stdin>, line 1667); backlink
Unknown interpreted text role "func".
System Message: ERROR/3 (<stdin>, line 1667); backlink
Unknown interpreted text role "issue".
Documentation
The documentation now covers how to define and configure a :ref:`custom log format <custom-log-formats>` (:issue:`3616`, :issue:`3660`)
System Message: ERROR/3 (<stdin>, line 1674); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1674); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1674); backlink
Unknown interpreted text role "issue".
API documentation added for :class:`~scrapy.exporters.MarshalItemExporter` and :class:`~scrapy.exporters.PythonItemExporter` (:issue:`3973`)
System Message: ERROR/3 (<stdin>, line 1677); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1677); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1677); backlink
Unknown interpreted text role "issue".
API documentation added for :class:`~scrapy.item.BaseItem` and :class:`~scrapy.item.ItemMeta` (:issue:`3999`)
System Message: ERROR/3 (<stdin>, line 1680); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1680); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1680); backlink
Unknown interpreted text role "issue".
Minor documentation fixes (:issue:`2998`, :issue:`3398`, :issue:`3597`, :issue:`3894`, :issue:`3934`, :issue:`3978`, :issue:`3993`, :issue:`4022`, :issue:`4028`, :issue:`4033`, :issue:`4046`, :issue:`4050`, :issue:`4055`, :issue:`4056`, :issue:`4061`, :issue:`4072`, :issue:`4071`, :issue:`4079`, :issue:`4081`, :issue:`4089`, :issue:`4093`)
System Message: ERROR/3 (<stdin>, line 1683); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1683); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1683); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1683); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1683); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1683); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1683); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1683); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1683); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1683); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1683); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1683); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1683); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1683); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1683); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1683); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1683); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1683); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1683); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1683); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1683); backlink
Unknown interpreted text role "issue".
Deprecation removals
scrapy.xlib has been removed (:issue:`4015`)
System Message: ERROR/3 (<stdin>, line 1695); backlink
Unknown interpreted text role "issue".
Deprecations
The LevelDB storage backend (scrapy.extensions.httpcache.LeveldbCacheStorage) of :class:`~scrapy.downloadermiddlewares.httpcache.HttpCacheMiddleware` is deprecated (:issue:`4085`, :issue:`4092`)
System Message: ERROR/3 (<stdin>, line 1703); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1703); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1703); backlink
Unknown interpreted text role "issue".
Use of the undocumented SCRAPY_PICKLED_SETTINGS_TO_OVERRIDE environment variable is deprecated (:issue:`3910`)
System Message: ERROR/3 (<stdin>, line 1708); backlink
Unknown interpreted text role "issue".
scrapy.item.DictItem is deprecated, use :class:`~scrapy.item.Item` instead (:issue:`3999`)
System Message: ERROR/3 (<stdin>, line 1711); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1711); backlink
Unknown interpreted text role "issue".
Other changes
Minimum versions of optional Scrapy requirements that are covered by continuous integration tests have been updated:
Lower versions of these optional requirements may work, but it is not guaranteed (:issue:`3892`)
System Message: ERROR/3 (<stdin>, line 1724); backlink
Unknown interpreted text role "issue".
GitHub templates for bug reports and feature requests (:issue:`3126`, :issue:`3471`, :issue:`3749`, :issue:`3754`)
System Message: ERROR/3 (<stdin>, line 1727); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1727); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1727); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1727); backlink
Unknown interpreted text role "issue".
Continuous integration fixes (:issue:`3923`)
System Message: ERROR/3 (<stdin>, line 1730); backlink
Unknown interpreted text role "issue".
Code cleanup (:issue:`3391`, :issue:`3907`, :issue:`3946`, :issue:`3950`, :issue:`4023`, :issue:`4031`)
System Message: ERROR/3 (<stdin>, line 1732); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1732); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1732); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1732); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1732); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1732); backlink
Unknown interpreted text role "issue".
Scrapy 1.7.4 (2019-10-21)
Revert the fix for :issue:`3804` (:issue:`3819`), which has a few undesired side effects (:issue:`3897`, :issue:`3976`).
System Message: ERROR/3 (<stdin>, line 1741); backlink
Unknown interpreted text role "issue".System Message: ERROR/3 (<stdin>, line 1741); backlink
Unknown interpreted text role "issue".System Message: ERROR/3 (<stdin>, line 1741); backlink
Unknown interpreted text role "issue".System Message: ERROR/3 (<stdin>, line 1741); backlink
Unknown interpreted text role "issue".As a result, when an item loader is initialized with an item, :meth:`ItemLoader.load_item() <scrapy.loader.ItemLoader.load_item>` once again makes later calls to :meth:`ItemLoader.get_output_value() <scrapy.loader.ItemLoader.get_output_value>` or :meth:`ItemLoader.load_item() <scrapy.loader.ItemLoader.load_item>` return empty data.
System Message: ERROR/3 (<stdin>, line 1744); backlink
Unknown interpreted text role "meth".System Message: ERROR/3 (<stdin>, line 1744); backlink
Unknown interpreted text role "meth".System Message: ERROR/3 (<stdin>, line 1744); backlink
Unknown interpreted text role "meth".Scrapy 1.7.3 (2019-08-01)
Enforce lxml 4.3.5 or lower for Python 3.4 (:issue:`3912`, :issue:`3918`).
System Message: ERROR/3 (<stdin>, line 1756); backlink
Unknown interpreted text role "issue".System Message: ERROR/3 (<stdin>, line 1756); backlink
Unknown interpreted text role "issue".Scrapy 1.7.2 (2019-07-23)
Fix Python 2 support (:issue:`3889`, :issue:`3893`, :issue:`3896`).
System Message: ERROR/3 (<stdin>, line 1764); backlink
Unknown interpreted text role "issue".System Message: ERROR/3 (<stdin>, line 1764); backlink
Unknown interpreted text role "issue".System Message: ERROR/3 (<stdin>, line 1764); backlink
Unknown interpreted text role "issue".Scrapy 1.7.1 (2019-07-18)
Re-packaging of Scrapy 1.7.0, which was missing some changes in PyPI.
Scrapy 1.7.0 (2019-07-18)
Note
Make sure you install Scrapy 1.7.1. The Scrapy 1.7.0 package in PyPI is the result of an erroneous commit tagging and does not include all the changes described below.
Highlights:
- Improvements for crawls targeting multiple domains
- A cleaner way to pass arguments to callbacks
- A new class for JSON requests
- Improvements for rule-based spiders
- New features for feed exports
Backward-incompatible changes
429 is now part of the :setting:`RETRY_HTTP_CODES` setting by default
System Message: ERROR/3 (<stdin>, line 1795); backlink
Unknown interpreted text role "setting".
This change is backward incompatible. If you don’t want to retry 429, you must override :setting:`RETRY_HTTP_CODES` accordingly.
System Message: ERROR/3 (<stdin>, line 1797); backlink
Unknown interpreted text role "setting".
:class:`~scrapy.crawler.Crawler`, :class:`CrawlerRunner.crawl <scrapy.crawler.CrawlerRunner.crawl>` and :class:`CrawlerRunner.create_crawler <scrapy.crawler.CrawlerRunner.create_crawler>` no longer accept a :class:`~scrapy.spiders.Spider` subclass instance, they only accept a :class:`~scrapy.spiders.Spider` subclass now.
System Message: ERROR/3 (<stdin>, line 1800); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1800); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1800); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1800); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1800); backlink
Unknown interpreted text role "class".
:class:`~scrapy.spiders.Spider` subclass instances were never meant to work, and they were not working as one would expect: instead of using the passed :class:`~scrapy.spiders.Spider` subclass instance, their :class:`~scrapy.spiders.Spider.from_crawler` method was called to generate a new instance.
System Message: ERROR/3 (<stdin>, line 1806); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1806); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1806); backlink
Unknown interpreted text role "class".
Non-default values for the :setting:`SCHEDULER_PRIORITY_QUEUE` setting may stop working. Scheduler priority queue classes now need to handle :class:`~scrapy.http.Request` objects instead of arbitrary Python data structures.
System Message: ERROR/3 (<stdin>, line 1812); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1812); backlink
Unknown interpreted text role "class".
An additional crawler parameter has been added to the __init__ method of the :class:`~scrapy.core.scheduler.Scheduler` class. Custom scheduler subclasses which don't accept arbitrary parameters in their __init__ method might break because of this change.
System Message: ERROR/3 (<stdin>, line 1817); backlink
Unknown interpreted text role "class".
For more information, see :setting:`SCHEDULER`.
System Message: ERROR/3 (<stdin>, line 1822); backlink
Unknown interpreted text role "setting".
See also :ref:`1.7-deprecation-removals` below.
System Message: ERROR/3 (<stdin>, line 1824); backlink
Unknown interpreted text role "ref".New features
A new scheduler priority queue, scrapy.pqueues.DownloaderAwarePriorityQueue, may be :ref:`enabled <broad-crawls-scheduler-priority-queue>` for a significant scheduling improvement on crawls targetting multiple web domains, at the cost of no :setting:`CONCURRENT_REQUESTS_PER_IP` support (:issue:`3520`)
System Message: ERROR/3 (<stdin>, line 1830); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1830); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1830); backlink
Unknown interpreted text role "issue".
A new :attr:`Request.cb_kwargs <scrapy.http.Request.cb_kwargs>` attribute provides a cleaner way to pass keyword arguments to callback methods (:issue:`1138`, :issue:`3563`)
System Message: ERROR/3 (<stdin>, line 1836); backlink
Unknown interpreted text role "attr".
System Message: ERROR/3 (<stdin>, line 1836); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1836); backlink
Unknown interpreted text role "issue".
A new :class:`JSONRequest <scrapy.http.JsonRequest>` class offers a more convenient way to build JSON requests (:issue:`3504`, :issue:`3505`)
System Message: ERROR/3 (<stdin>, line 1840); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1840); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1840); backlink
Unknown interpreted text role "issue".
A process_request callback passed to the :class:`~scrapy.spiders.Rule` __init__ method now receives the :class:`~scrapy.http.Response` object that originated the request as its second argument (:issue:`3682`)
System Message: ERROR/3 (<stdin>, line 1843); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1843); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1843); backlink
Unknown interpreted text role "issue".
A new restrict_text parameter for the :attr:`LinkExtractor <scrapy.linkextractors.lxmlhtml.LxmlLinkExtractor>` __init__ method allows filtering links by linking text (:issue:`3622`, :issue:`3635`)
System Message: ERROR/3 (<stdin>, line 1847); backlink
Unknown interpreted text role "attr".
System Message: ERROR/3 (<stdin>, line 1847); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1847); backlink
Unknown interpreted text role "issue".
A new :setting:`FEED_STORAGE_S3_ACL` setting allows defining a custom ACL for feeds exported to Amazon S3 (:issue:`3607`)
System Message: ERROR/3 (<stdin>, line 1852); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1852); backlink
Unknown interpreted text role "issue".
A new :setting:`FEED_STORAGE_FTP_ACTIVE` setting allows using FTP’s active connection mode for feeds exported to FTP servers (:issue:`3829`)
System Message: ERROR/3 (<stdin>, line 1855); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1855); backlink
Unknown interpreted text role "issue".
A new :setting:`METAREFRESH_IGNORE_TAGS` setting allows overriding which HTML tags are ignored when searching a response for HTML meta tags that trigger a redirect (:issue:`1422`, :issue:`3768`)
System Message: ERROR/3 (<stdin>, line 1858); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1858); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1858); backlink
Unknown interpreted text role "issue".
A new :reqmeta:`redirect_reasons` request meta key exposes the reason (status code, meta refresh) behind every followed redirect (:issue:`3581`, :issue:`3687`)
System Message: ERROR/3 (<stdin>, line 1862); backlink
Unknown interpreted text role "reqmeta".
System Message: ERROR/3 (<stdin>, line 1862); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1862); backlink
Unknown interpreted text role "issue".
The SCRAPY_CHECK variable is now set to the true string during runs of the :command:`check` command, which allows :ref:`detecting contract check runs from code <detecting-contract-check-runs>` (:issue:`3704`, :issue:`3739`)
System Message: ERROR/3 (<stdin>, line 1866); backlink
Unknown interpreted text role "command".
System Message: ERROR/3 (<stdin>, line 1866); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1866); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1866); backlink
Unknown interpreted text role "issue".
A new :meth:`Item.deepcopy() <scrapy.item.Item.deepcopy>` method makes it easier to :ref:`deep-copy items <copying-items>` (:issue:`1493`, :issue:`3671`)
System Message: ERROR/3 (<stdin>, line 1871); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 1871); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1871); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1871); backlink
Unknown interpreted text role "issue".
:class:`~scrapy.extensions.corestats.CoreStats` also logs elapsed_time_seconds now (:issue:`3638`)
System Message: ERROR/3 (<stdin>, line 1875); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1875); backlink
Unknown interpreted text role "issue".
Exceptions from :class:`~scrapy.loader.ItemLoader` :ref:`input and output processors <topics-loaders-processors>` are now more verbose (:issue:`3836`, :issue:`3840`)
System Message: ERROR/3 (<stdin>, line 1878); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1878); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1878); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1878); backlink
Unknown interpreted text role "issue".
:class:`~scrapy.crawler.Crawler`, :class:`CrawlerRunner.crawl <scrapy.crawler.CrawlerRunner.crawl>` and :class:`CrawlerRunner.create_crawler <scrapy.crawler.CrawlerRunner.create_crawler>` now fail gracefully if they receive a :class:`~scrapy.spiders.Spider` subclass instance instead of the subclass itself (:issue:`2283`, :issue:`3610`, :issue:`3872`)
System Message: ERROR/3 (<stdin>, line 1882); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1882); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1882); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1882); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1882); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1882); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1882); backlink
Unknown interpreted text role "issue".
Bug fixes
:meth:`~scrapy.spidermiddlewares.SpiderMiddleware.process_spider_exception` is now also invoked for generators (:issue:`220`, :issue:`2061`)
System Message: ERROR/3 (<stdin>, line 1893); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 1893); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1893); backlink
Unknown interpreted text role "issue".
System exceptions like KeyboardInterrupt are no longer caught (:issue:`3726`)
System Message: ERROR/3 (<stdin>, line 1896); backlink
Unknown interpreted text role "issue".
:meth:`ItemLoader.load_item() <scrapy.loader.ItemLoader.load_item>` no longer makes later calls to :meth:`ItemLoader.get_output_value() <scrapy.loader.ItemLoader.get_output_value>` or :meth:`ItemLoader.load_item() <scrapy.loader.ItemLoader.load_item>` return empty data (:issue:`3804`, :issue:`3819`)
System Message: ERROR/3 (<stdin>, line 1899); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 1899); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 1899); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 1899); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1899); backlink
Unknown interpreted text role "issue".
The images pipeline (:class:`~scrapy.pipelines.images.ImagesPipeline`) no longer ignores these Amazon S3 settings: :setting:`AWS_ENDPOINT_URL`, :setting:`AWS_REGION_NAME`, :setting:`AWS_USE_SSL`, :setting:`AWS_VERIFY` (:issue:`3625`)
System Message: ERROR/3 (<stdin>, line 1905); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1905); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1905); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1905); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1905); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1905); backlink
Unknown interpreted text role "issue".
Fixed a memory leak in scrapy.pipelines.media.MediaPipeline affecting, for example, non-200 responses and exceptions from custom middlewares (:issue:`3813`)
System Message: ERROR/3 (<stdin>, line 1910); backlink
Unknown interpreted text role "issue".
Requests with private callbacks are now correctly unserialized from disk (:issue:`3790`)
System Message: ERROR/3 (<stdin>, line 1914); backlink
Unknown interpreted text role "issue".
:meth:`FormRequest.from_response() <scrapy.http.FormRequest.from_response>` now handles invalid methods like major web browsers (:issue:`3777`, :issue:`3794`)
System Message: ERROR/3 (<stdin>, line 1917); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 1917); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1917); backlink
Unknown interpreted text role "issue".
Documentation
A new topic, :ref:`topics-dynamic-content`, covers recommended approaches to read dynamically-loaded data (:issue:`3703`)
System Message: ERROR/3 (<stdin>, line 1925); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1925); backlink
Unknown interpreted text role "issue".
:ref:`topics-broad-crawls` now features information about memory usage (:issue:`1264`, :issue:`3866`)
System Message: ERROR/3 (<stdin>, line 1928); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1928); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1928); backlink
Unknown interpreted text role "issue".
The documentation of :class:`~scrapy.spiders.Rule` now covers how to access the text of a link when using :class:`~scrapy.spiders.CrawlSpider` (:issue:`3711`, :issue:`3712`)
System Message: ERROR/3 (<stdin>, line 1931); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1931); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1931); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1931); backlink
Unknown interpreted text role "issue".
A new section, :ref:`httpcache-storage-custom`, covers writing a custom cache storage backend for :class:`~scrapy.downloadermiddlewares.httpcache.HttpCacheMiddleware` (:issue:`3683`, :issue:`3692`)
System Message: ERROR/3 (<stdin>, line 1935); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1935); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 1935); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1935); backlink
Unknown interpreted text role "issue".
A new :ref:`FAQ <faq>` entry, :ref:`faq-split-item`, explains what to do when you want to split an item into multiple items from an item pipeline (:issue:`2240`, :issue:`3672`)
System Message: ERROR/3 (<stdin>, line 1940); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1940); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1940); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1940); backlink
Unknown interpreted text role "issue".
Updated the :ref:`FAQ entry about crawl order <faq-bfo-dfo>` to explain why the first few requests rarely follow the desired order (:issue:`1739`, :issue:`3621`)
System Message: ERROR/3 (<stdin>, line 1944); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 1944); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1944); backlink
Unknown interpreted text role "issue".
The :setting:`LOGSTATS_INTERVAL` setting (:issue:`3730`), the :meth:`FilesPipeline.file_path <scrapy.pipelines.files.FilesPipeline.file_path>` and :meth:`ImagesPipeline.file_path <scrapy.pipelines.images.ImagesPipeline.file_path>` methods (:issue:`2253`, :issue:`3609`) and the :meth:`Crawler.stop() <scrapy.crawler.Crawler.stop>` method (:issue:`3842`) are now documented
System Message: ERROR/3 (<stdin>, line 1948); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 1948); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1948); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 1948); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 1948); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1948); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1948); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 1948); backlink
Unknown interpreted text role "issue".
Some parts of the documentation that were confusing or misleading are now clearer (:issue:`1347`, :issue:`1789`, :issue:`2289`, :issue:`3069`, :issue:`3615`, :issue:`3626`, :issue:`3668`, :issue:`3670`, :issue:`3673`, :issue:`3728`, :issue:`3762`, :issue:`3861`, :issue:`3882`)
System Message: ERROR/3 (<stdin>, line 1956); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1956); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1956); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1956); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1956); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1956); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1956); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1956); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1956); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1956); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1956); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1956); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1956); backlink
Unknown interpreted text role "issue".
Minor documentation fixes (:issue:`3648`, :issue:`3649`, :issue:`3662`, :issue:`3674`, :issue:`3676`, :issue:`3694`, :issue:`3724`, :issue:`3764`, :issue:`3767`, :issue:`3791`, :issue:`3797`, :issue:`3806`, :issue:`3812`)
System Message: ERROR/3 (<stdin>, line 1961); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1961); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1961); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1961); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1961); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1961); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1961); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1961); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1961); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1961); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1961); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1961); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 1961); backlink
Unknown interpreted text role "issue".
Deprecation removals
The following deprecated APIs have been removed (:issue:`3578`):
System Message: ERROR/3 (<stdin>, line 1970); backlink
Unknown interpreted text role "issue".scrapy.conf (use :attr:`Crawler.settings <scrapy.crawler.Crawler.settings>`)
System Message: ERROR/3 (<stdin>, line 1972); backlink
Unknown interpreted text role "attr".
From scrapy.core.downloader.handlers:
- http.HttpDownloadHandler (use http10.HTTP10DownloadHandler)
scrapy.loader.ItemLoader._get_values (use _get_xpathvalues)
scrapy.loader.XPathItemLoader (use :class:`~scrapy.loader.ItemLoader`)
System Message: ERROR/3 (<stdin>, line 1981); backlink
Unknown interpreted text role "class".
scrapy.log (see :ref:`topics-logging`)
System Message: ERROR/3 (<stdin>, line 1983); backlink
Unknown interpreted text role "ref".
From scrapy.pipelines:
- files.FilesPipeline.file_key (use file_path)
- images.ImagesPipeline.file_key (use file_path)
- images.ImagesPipeline.image_key (use file_path)
- images.ImagesPipeline.thumb_key (use thumb_path)
From both scrapy.selector and scrapy.selector.lxmlsel:
HtmlXPathSelector (use :class:`~scrapy.selector.Selector`)
System Message: ERROR/3 (<stdin>, line 1997); backlink
Unknown interpreted text role "class".
XmlXPathSelector (use :class:`~scrapy.selector.Selector`)
System Message: ERROR/3 (<stdin>, line 1999); backlink
Unknown interpreted text role "class".
XPathSelector (use :class:`~scrapy.selector.Selector`)
System Message: ERROR/3 (<stdin>, line 2001); backlink
Unknown interpreted text role "class".
XPathSelectorList (use :class:`~scrapy.selector.Selector`)
System Message: ERROR/3 (<stdin>, line 2003); backlink
Unknown interpreted text role "class".
From scrapy.selector.csstranslator:
- ScrapyGenericTranslator (use parsel.csstranslator.GenericTranslator)
- ScrapyHTMLTranslator (use parsel.csstranslator.HTMLTranslator)
- ScrapyXPathExpr (use parsel.csstranslator.XPathExpr)
From :class:`~scrapy.selector.Selector`:
System Message: ERROR/3 (<stdin>, line 2013); backlink
Unknown interpreted text role "class".
- _root (both the __init__ method argument and the object property, use root)
- extract_unquoted (use getall)
- select (use xpath)
From :class:`~scrapy.selector.SelectorList`:
System Message: ERROR/3 (<stdin>, line 2022); backlink
Unknown interpreted text role "class".
- extract_unquoted (use getall)
- select (use xpath)
- x (use xpath)
scrapy.spiders.BaseSpider (use :class:`~scrapy.spiders.Spider`)
System Message: ERROR/3 (<stdin>, line 2030); backlink
Unknown interpreted text role "class".
From :class:`~scrapy.spiders.Spider` (and subclasses):
System Message: ERROR/3 (<stdin>, line 2032); backlink
Unknown interpreted text role "class".
DOWNLOAD_DELAY (use :ref:`download_delay <spider-download_delay-attribute>`)
System Message: ERROR/3 (<stdin>, line 2034); backlink
Unknown interpreted text role "ref".
set_crawler (use :meth:`~scrapy.spiders.Spider.from_crawler`)
System Message: ERROR/3 (<stdin>, line 2037); backlink
Unknown interpreted text role "meth".
scrapy.spiders.spiders (use :class:`~scrapy.spiderloader.SpiderLoader`)
System Message: ERROR/3 (<stdin>, line 2039); backlink
Unknown interpreted text role "class".
scrapy.telnet (use :mod:`scrapy.extensions.telnet`)
System Message: ERROR/3 (<stdin>, line 2041); backlink
Unknown interpreted text role "mod".
From scrapy.utils.python:
- str_to_unicode (use to_unicode)
- unicode_to_str (use to_bytes)
scrapy.utils.response.body_or_str
The following deprecated settings have also been removed (:issue:`3578`):
System Message: ERROR/3 (<stdin>, line 2051); backlink
Unknown interpreted text role "issue".SPIDER_MANAGER_CLASS (use :setting:`SPIDER_LOADER_CLASS`)
System Message: ERROR/3 (<stdin>, line 2053); backlink
Unknown interpreted text role "setting".
Deprecations
The queuelib.PriorityQueue value for the :setting:`SCHEDULER_PRIORITY_QUEUE` setting is deprecated. Use scrapy.pqueues.ScrapyPriorityQueue instead.
System Message: ERROR/3 (<stdin>, line 2061); backlink
Unknown interpreted text role "setting".
process_request callbacks passed to :class:`~scrapy.spiders.Rule` that do not accept two arguments are deprecated.
System Message: ERROR/3 (<stdin>, line 2065); backlink
Unknown interpreted text role "class".
The following modules are deprecated:
- scrapy.utils.http (use w3lib.http)
- scrapy.utils.markup (use w3lib.html)
- scrapy.utils.multipart (use urllib3)
The scrapy.utils.datatypes.MergeDict class is deprecated for Python 3 code bases. Use :class:`~collections.ChainMap` instead. (:issue:`3878`)
System Message: ERROR/3 (<stdin>, line 2076); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 2076); backlink
Unknown interpreted text role "issue".
The scrapy.utils.gz.is_gzipped function is deprecated. Use scrapy.utils.gz.gzip_magic_number instead.
Other changes
It is now possible to run all tests from the same tox environment in parallel; the documentation now covers :ref:`this and other ways to run tests <running-tests>` (:issue:`3707`)
System Message: ERROR/3 (<stdin>, line 2090); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 2090); backlink
Unknown interpreted text role "issue".
It is now possible to generate an API documentation coverage report (:issue:`3806`, :issue:`3810`, :issue:`3860`)
System Message: ERROR/3 (<stdin>, line 2094); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2094); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2094); backlink
Unknown interpreted text role "issue".
The :ref:`documentation policies <documentation-policies>` now require docstrings (:issue:`3701`) that follow PEP 257 (:issue:`3748`)
System Message: ERROR/3 (<stdin>, line 2097); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 2097); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2097); backlink
Unknown interpreted text role "issue".
Internal fixes and cleanup (:issue:`3629`, :issue:`3643`, :issue:`3684`, :issue:`3698`, :issue:`3734`, :issue:`3735`, :issue:`3736`, :issue:`3737`, :issue:`3809`, :issue:`3821`, :issue:`3825`, :issue:`3827`, :issue:`3833`, :issue:`3857`, :issue:`3877`)
System Message: ERROR/3 (<stdin>, line 2100); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2100); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2100); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2100); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2100); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2100); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2100); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2100); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2100); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2100); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2100); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2100); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2100); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2100); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2100); backlink
Unknown interpreted text role "issue".
Scrapy 1.6.0 (2019-01-30)
Highlights:
better Windows support;
Python 3.7 compatibility;
big documentation improvements, including a switch from .extract_first() + .extract() API to .get() + .getall() API;
feed exports, FilePipeline and MediaPipeline improvements;
better extensibility: :signal:`item_error` and :signal:`request_reached_downloader` signals; from_crawler support for feed exporters, feed storages and dupefilters.
System Message: ERROR/3 (<stdin>, line 2118); backlink
Unknown interpreted text role "signal".
System Message: ERROR/3 (<stdin>, line 2118); backlink
Unknown interpreted text role "signal".
scrapy.contracts fixes and new features;
telnet console security improvements, first released as a backport in :ref:`release-1.5.2`;
System Message: ERROR/3 (<stdin>, line 2122); backlink
Unknown interpreted text role "ref".
clean-up of the deprecated code;
various bug fixes, small new features and usability improvements across the codebase.
Selector API changes
While these are not changes in Scrapy itself, but rather in the parsel library which Scrapy uses for xpath/css selectors, these changes are worth mentioning here. Scrapy now depends on parsel >= 1.5, and Scrapy documentation is updated to follow recent parsel API conventions.
Most visible change is that .get() and .getall() selector methods are now preferred over .extract_first() and .extract(). We feel that these new methods result in a more concise and readable code. See :ref:`old-extraction-api` for more details.
System Message: ERROR/3 (<stdin>, line 2136); backlink
Unknown interpreted text role "ref".Note
There are currently no plans to deprecate .extract() and .extract_first() methods.
Another useful new feature is the introduction of Selector.attrib and SelectorList.attrib properties, which make it easier to get attributes of HTML elements. See :ref:`selecting-attributes`.
System Message: ERROR/3 (<stdin>, line 2145); backlink
Unknown interpreted text role "ref".CSS selectors are cached in parsel >= 1.5, which makes them faster when the same CSS path is used many times. This is very common in case of Scrapy spiders: callbacks are usually called several times, on different pages.
If you're using custom Selector or SelectorList subclasses, a backward incompatible change in parsel may affect your code. See parsel changelog for a detailed description, as well as for the full list of improvements.
Telnet console
Backward incompatible: Scrapy's telnet console now requires username and password. See :ref:`topics-telnetconsole` for more details. This change fixes a security issue; see :ref:`release-1.5.2` release notes for details.
System Message: ERROR/3 (<stdin>, line 2164); backlink
Unknown interpreted text role "ref".System Message: ERROR/3 (<stdin>, line 2164); backlink
Unknown interpreted text role "ref".New extensibility features
from_crawler support is added to feed exporters and feed storages. This, among other things, allows to access Scrapy settings from custom feed storages and exporters (:issue:`1605`, :issue:`3348`).
System Message: ERROR/3 (<stdin>, line 2171); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2171); backlink
Unknown interpreted text role "issue".
from_crawler support is added to dupefilters (:issue:`2956`); this allows to access e.g. settings or a spider from a dupefilter.
System Message: ERROR/3 (<stdin>, line 2174); backlink
Unknown interpreted text role "issue".
:signal:`item_error` is fired when an error happens in a pipeline (:issue:`3256`);
System Message: ERROR/3 (<stdin>, line 2176); backlink
Unknown interpreted text role "signal".
System Message: ERROR/3 (<stdin>, line 2176); backlink
Unknown interpreted text role "issue".
:signal:`request_reached_downloader` is fired when Downloader gets a new Request; this signal can be useful e.g. for custom Schedulers (:issue:`3393`).
System Message: ERROR/3 (<stdin>, line 2178); backlink
Unknown interpreted text role "signal".
System Message: ERROR/3 (<stdin>, line 2178); backlink
Unknown interpreted text role "issue".
new SitemapSpider :meth:`~.SitemapSpider.sitemap_filter` method which allows to select sitemap entries based on their attributes in SitemapSpider subclasses (:issue:`3512`).
System Message: ERROR/3 (<stdin>, line 2181); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 2181); backlink
Unknown interpreted text role "issue".
Lazy loading of Downloader Handlers is now optional; this enables better initialization error handling in custom Downloader Handlers (:issue:`3394`).
System Message: ERROR/3 (<stdin>, line 2184); backlink
Unknown interpreted text role "issue".
New FilePipeline and MediaPipeline features
Expose more options for S3FilesStore: :setting:`AWS_ENDPOINT_URL`, :setting:`AWS_USE_SSL`, :setting:`AWS_VERIFY`, :setting:`AWS_REGION_NAME`. For example, this allows to use alternative or self-hosted AWS-compatible providers (:issue:`2609`, :issue:`3548`).
System Message: ERROR/3 (<stdin>, line 2190); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 2190); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 2190); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 2190); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 2190); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2190); backlink
Unknown interpreted text role "issue".
ACL support for Google Cloud Storage: :setting:`FILES_STORE_GCS_ACL` and :setting:`IMAGES_STORE_GCS_ACL` (:issue:`3199`).
System Message: ERROR/3 (<stdin>, line 2194); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 2194); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 2194); backlink
Unknown interpreted text role "issue".
scrapy.contracts improvements
Exceptions in contracts code are handled better (:issue:`3377`);
System Message: ERROR/3 (<stdin>, line 2200); backlink
Unknown interpreted text role "issue".
dont_filter=True is used for contract requests, which allows to test different callbacks with the same URL (:issue:`3381`);
System Message: ERROR/3 (<stdin>, line 2201); backlink
Unknown interpreted text role "issue".
request_cls attribute in Contract subclasses allow to use different Request classes in contracts, for example FormRequest (:issue:`3383`).
System Message: ERROR/3 (<stdin>, line 2203); backlink
Unknown interpreted text role "issue".
Fixed errback handling in contracts, e.g. for cases where a contract is executed for URL which returns non-200 response (:issue:`3371`).
System Message: ERROR/3 (<stdin>, line 2205); backlink
Unknown interpreted text role "issue".
Usability improvements
more stats for RobotsTxtMiddleware (:issue:`3100`)
System Message: ERROR/3 (<stdin>, line 2211); backlink
Unknown interpreted text role "issue".
INFO log level is used to show telnet host/port (:issue:`3115`)
System Message: ERROR/3 (<stdin>, line 2212); backlink
Unknown interpreted text role "issue".
a message is added to IgnoreRequest in RobotsTxtMiddleware (:issue:`3113`)
System Message: ERROR/3 (<stdin>, line 2213); backlink
Unknown interpreted text role "issue".
better validation of url argument in Response.follow (:issue:`3131`)
System Message: ERROR/3 (<stdin>, line 2214); backlink
Unknown interpreted text role "issue".
non-zero exit code is returned from Scrapy commands when error happens on spider initialization (:issue:`3226`)
System Message: ERROR/3 (<stdin>, line 2215); backlink
Unknown interpreted text role "issue".
Link extraction improvements: "ftp" is added to scheme list (:issue:`3152`); "flv" is added to common video extensions (:issue:`3165`)
System Message: ERROR/3 (<stdin>, line 2217); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2217); backlink
Unknown interpreted text role "issue".
better error message when an exporter is disabled (:issue:`3358`);
System Message: ERROR/3 (<stdin>, line 2219); backlink
Unknown interpreted text role "issue".
scrapy shell --help mentions syntax required for local files (./file.html) - :issue:`3496`.
System Message: ERROR/3 (<stdin>, line 2220); backlink
Unknown interpreted text role "issue".
Referer header value is added to RFPDupeFilter log messages (:issue:`3588`)
System Message: ERROR/3 (<stdin>, line 2222); backlink
Unknown interpreted text role "issue".
Bug fixes
fixed issue with extra blank lines in .csv exports under Windows (:issue:`3039`);
System Message: ERROR/3 (<stdin>, line 2227); backlink
Unknown interpreted text role "issue".
proper handling of pickling errors in Python 3 when serializing objects for disk queues (:issue:`3082`)
System Message: ERROR/3 (<stdin>, line 2229); backlink
Unknown interpreted text role "issue".
flags are now preserved when copying Requests (:issue:`3342`);
System Message: ERROR/3 (<stdin>, line 2231); backlink
Unknown interpreted text role "issue".
FormRequest.from_response clickdata shouldn't ignore elements with input[type=image] (:issue:`3153`).
System Message: ERROR/3 (<stdin>, line 2232); backlink
Unknown interpreted text role "issue".
FormRequest.from_response should preserve duplicate keys (:issue:`3247`)
System Message: ERROR/3 (<stdin>, line 2234); backlink
Unknown interpreted text role "issue".
Documentation improvements
Docs are re-written to suggest .get/.getall API instead of .extract/.extract_first. Also, :ref:`topics-selectors` docs are updated and re-structured to match latest parsel docs; they now contain more topics, such as :ref:`selecting-attributes` or :ref:`topics-selectors-css-extensions` (:issue:`3390`).
System Message: ERROR/3 (<stdin>, line 2239); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 2239); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 2239); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 2239); backlink
Unknown interpreted text role "issue".
:ref:`topics-developer-tools` is a new tutorial which replaces old Firefox and Firebug tutorials (:issue:`3400`).
System Message: ERROR/3 (<stdin>, line 2244); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 2244); backlink
Unknown interpreted text role "issue".
SCRAPY_PROJECT environment variable is documented (:issue:`3518`);
System Message: ERROR/3 (<stdin>, line 2246); backlink
Unknown interpreted text role "issue".
troubleshooting section is added to install instructions (:issue:`3517`);
System Message: ERROR/3 (<stdin>, line 2247); backlink
Unknown interpreted text role "issue".
improved links to beginner resources in the tutorial (:issue:`3367`, :issue:`3468`);
System Message: ERROR/3 (<stdin>, line 2248); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2248); backlink
Unknown interpreted text role "issue".
fixed :setting:`RETRY_HTTP_CODES` default values in docs (:issue:`3335`);
System Message: ERROR/3 (<stdin>, line 2250); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 2250); backlink
Unknown interpreted text role "issue".
remove unused DEPTH_STATS option from docs (:issue:`3245`);
System Message: ERROR/3 (<stdin>, line 2251); backlink
Unknown interpreted text role "issue".
other cleanups (:issue:`3347`, :issue:`3350`, :issue:`3445`, :issue:`3544`, :issue:`3605`).
System Message: ERROR/3 (<stdin>, line 2252); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2252); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2252); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2252); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2252); backlink
Unknown interpreted text role "issue".
Deprecation removals
Compatibility shims for pre-1.0 Scrapy module names are removed (:issue:`3318`):
System Message: ERROR/3 (<stdin>, line 2258); backlink
Unknown interpreted text role "issue".- scrapy.command
- scrapy.contrib (with all submodules)
- scrapy.contrib_exp (with all submodules)
- scrapy.dupefilter
- scrapy.linkextractor
- scrapy.project
- scrapy.spider
- scrapy.spidermanager
- scrapy.squeue
- scrapy.stats
- scrapy.statscol
- scrapy.utils.decorator
See :ref:`module-relocations` for more information, or use suggestions from Scrapy 1.5.x deprecation warnings to update your code.
System Message: ERROR/3 (<stdin>, line 2274); backlink
Unknown interpreted text role "ref".Other deprecation removals:
Deprecated scrapy.interfaces.ISpiderManager is removed; please use scrapy.interfaces.ISpiderLoader.
Deprecated CrawlerSettings class is removed (:issue:`3327`).
System Message: ERROR/3 (<stdin>, line 2281); backlink
Unknown interpreted text role "issue".
Deprecated Settings.overrides and Settings.defaults attributes are removed (:issue:`3327`, :issue:`3359`).
System Message: ERROR/3 (<stdin>, line 2282); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2282); backlink
Unknown interpreted text role "issue".
Other improvements, cleanups
All Scrapy tests now pass on Windows; Scrapy testing suite is executed in a Windows environment on CI (:issue:`3315`).
System Message: ERROR/3 (<stdin>, line 2288); backlink
Unknown interpreted text role "issue".
Python 3.7 support (:issue:`3326`, :issue:`3150`, :issue:`3547`).
System Message: ERROR/3 (<stdin>, line 2290); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2290); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2290); backlink
Unknown interpreted text role "issue".
Testing and CI fixes (:issue:`3526`, :issue:`3538`, :issue:`3308`, :issue:`3311`, :issue:`3309`, :issue:`3305`, :issue:`3210`, :issue:`3299`)
System Message: ERROR/3 (<stdin>, line 2291); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2291); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2291); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2291); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2291); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2291); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2291); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2291); backlink
Unknown interpreted text role "issue".
scrapy.http.cookies.CookieJar.clear accepts "domain", "path" and "name" optional arguments (:issue:`3231`).
System Message: ERROR/3 (<stdin>, line 2293); backlink
Unknown interpreted text role "issue".
additional files are included to sdist (:issue:`3495`);
System Message: ERROR/3 (<stdin>, line 2295); backlink
Unknown interpreted text role "issue".
code style fixes (:issue:`3405`, :issue:`3304`);
System Message: ERROR/3 (<stdin>, line 2296); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2296); backlink
Unknown interpreted text role "issue".
unneeded .strip() call is removed (:issue:`3519`);
System Message: ERROR/3 (<stdin>, line 2297); backlink
Unknown interpreted text role "issue".
collections.deque is used to store MiddlewareManager methods instead of a list (:issue:`3476`)
System Message: ERROR/3 (<stdin>, line 2298); backlink
Unknown interpreted text role "issue".
Scrapy 1.5.2 (2019-01-22)
Security bugfix: Telnet console extension can be easily exploited by rogue websites POSTing content to http://localhost:6023, we haven't found a way to exploit it from Scrapy, but it is very easy to trick a browser to do so and elevates the risk for local development environment.
The fix is backward incompatible, it enables telnet user-password authentication by default with a random generated password. If you can't upgrade right away, please consider setting :setting:`TELNETCONSOLE_PORT` out of its default value.
System Message: ERROR/3 (<stdin>, line 2311); backlink
Unknown interpreted text role "setting".
See :ref:`telnet console <topics-telnetconsole>` documentation for more info
System Message: ERROR/3 (<stdin>, line 2316); backlink
Unknown interpreted text role "ref".
Backport CI build failure under GCE environment due to boto import error.
Scrapy 1.5.1 (2018-07-12)
This is a maintenance release with important bug fixes, but no new features:
O(N^2) gzip decompression issue which affected Python 3 and PyPy is fixed (:issue:`3281`);
System Message: ERROR/3 (<stdin>, line 2327); backlink
Unknown interpreted text role "issue".
skipping of TLS validation errors is improved (:issue:`3166`);
System Message: ERROR/3 (<stdin>, line 2329); backlink
Unknown interpreted text role "issue".
Ctrl-C handling is fixed in Python 3.5+ (:issue:`3096`);
System Message: ERROR/3 (<stdin>, line 2330); backlink
Unknown interpreted text role "issue".
testing fixes (:issue:`3092`, :issue:`3263`);
System Message: ERROR/3 (<stdin>, line 2331); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2331); backlink
Unknown interpreted text role "issue".
documentation improvements (:issue:`3058`, :issue:`3059`, :issue:`3089`, :issue:`3123`, :issue:`3127`, :issue:`3189`, :issue:`3224`, :issue:`3280`, :issue:`3279`, :issue:`3201`, :issue:`3260`, :issue:`3284`, :issue:`3298`, :issue:`3294`).
System Message: ERROR/3 (<stdin>, line 2332); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2332); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2332); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2332); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2332); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2332); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2332); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2332); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2332); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2332); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2332); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2332); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2332); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2332); backlink
Unknown interpreted text role "issue".
Scrapy 1.5.0 (2017-12-29)
This release brings small new features and improvements across the codebase. Some highlights:
- Google Cloud Storage is supported in FilesPipeline and ImagesPipeline.
- Crawling with proxy servers becomes more efficient, as connections to proxies can be reused now.
- Warnings, exception and logging messages are improved to make debugging easier.
- scrapy parse command now allows to set custom request meta via --meta argument.
- Compatibility with Python 3.6, PyPy and PyPy3 is improved; PyPy and PyPy3 are now supported officially, by running tests on CI.
- Better default handling of HTTP 308, 522 and 524 status codes.
- Documentation is improved, as usual.
Backward Incompatible Changes
Scrapy 1.5 drops support for Python 3.3.
Default Scrapy User-Agent now uses https link to scrapy.org (:issue:`2983`). This is technically backward-incompatible; override :setting:`USER_AGENT` if you relied on old value.
System Message: ERROR/3 (<stdin>, line 2362); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2362); backlink
Unknown interpreted text role "setting".
Logging of settings overridden by custom_settings is fixed; this is technically backward-incompatible because the logger changes from [scrapy.utils.log] to [scrapy.crawler]. If you're parsing Scrapy logs, please update your log parsers (:issue:`1343`).
System Message: ERROR/3 (<stdin>, line 2365); backlink
Unknown interpreted text role "issue".
LinkExtractor now ignores m4v extension by default, this is change in behavior.
522 and 524 status codes are added to RETRY_HTTP_CODES (:issue:`2851`)
System Message: ERROR/3 (<stdin>, line 2371); backlink
Unknown interpreted text role "issue".
New features
Support <link> tags in Response.follow (:issue:`2785`)
System Message: ERROR/3 (<stdin>, line 2376); backlink
Unknown interpreted text role "issue".
Support for ptpython REPL (:issue:`2654`)
System Message: ERROR/3 (<stdin>, line 2377); backlink
Unknown interpreted text role "issue".
Google Cloud Storage support for FilesPipeline and ImagesPipeline (:issue:`2923`).
System Message: ERROR/3 (<stdin>, line 2378); backlink
Unknown interpreted text role "issue".
New --meta option of the "scrapy parse" command allows to pass additional request.meta (:issue:`2883`)
System Message: ERROR/3 (<stdin>, line 2380); backlink
Unknown interpreted text role "issue".
Populate spider variable when using shell.inspect_response (:issue:`2812`)
System Message: ERROR/3 (<stdin>, line 2382); backlink
Unknown interpreted text role "issue".
Handle HTTP 308 Permanent Redirect (:issue:`2844`)
System Message: ERROR/3 (<stdin>, line 2383); backlink
Unknown interpreted text role "issue".
Add 522 and 524 to RETRY_HTTP_CODES (:issue:`2851`)
System Message: ERROR/3 (<stdin>, line 2384); backlink
Unknown interpreted text role "issue".
Log versions information at startup (:issue:`2857`)
System Message: ERROR/3 (<stdin>, line 2385); backlink
Unknown interpreted text role "issue".
scrapy.mail.MailSender now works in Python 3 (it requires Twisted 17.9.0)
Connections to proxy servers are reused (:issue:`2743`)
System Message: ERROR/3 (<stdin>, line 2387); backlink
Unknown interpreted text role "issue".
Add template for a downloader middleware (:issue:`2755`)
System Message: ERROR/3 (<stdin>, line 2388); backlink
Unknown interpreted text role "issue".
Explicit message for NotImplementedError when parse callback not defined (:issue:`2831`)
System Message: ERROR/3 (<stdin>, line 2389); backlink
Unknown interpreted text role "issue".
CrawlerProcess got an option to disable installation of root log handler (:issue:`2921`)
System Message: ERROR/3 (<stdin>, line 2391); backlink
Unknown interpreted text role "issue".
LinkExtractor now ignores m4v extension by default
Better log messages for responses over :setting:`DOWNLOAD_WARNSIZE` and :setting:`DOWNLOAD_MAXSIZE` limits (:issue:`2927`)
System Message: ERROR/3 (<stdin>, line 2394); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 2394); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 2394); backlink
Unknown interpreted text role "issue".
Show warning when a URL is put to Spider.allowed_domains instead of a domain (:issue:`2250`).
System Message: ERROR/3 (<stdin>, line 2396); backlink
Unknown interpreted text role "issue".
Bug fixes
Fix logging of settings overridden by custom_settings; this is technically backward-incompatible because the logger changes from [scrapy.utils.log] to [scrapy.crawler], so please update your log parsers if needed (:issue:`1343`)
System Message: ERROR/3 (<stdin>, line 2402); backlink
Unknown interpreted text role "issue".
Default Scrapy User-Agent now uses https link to scrapy.org (:issue:`2983`). This is technically backward-incompatible; override :setting:`USER_AGENT` if you relied on old value.
System Message: ERROR/3 (<stdin>, line 2406); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2406); backlink
Unknown interpreted text role "setting".
Fix PyPy and PyPy3 test failures, support them officially (:issue:`2793`, :issue:`2935`, :issue:`2990`, :issue:`3050`, :issue:`2213`, :issue:`3048`)
System Message: ERROR/3 (<stdin>, line 2409); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2409); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2409); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2409); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2409); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2409); backlink
Unknown interpreted text role "issue".
Fix DNS resolver when DNSCACHE_ENABLED=False (:issue:`2811`)
System Message: ERROR/3 (<stdin>, line 2412); backlink
Unknown interpreted text role "issue".
Add cryptography for Debian Jessie tox test env (:issue:`2848`)
System Message: ERROR/3 (<stdin>, line 2413); backlink
Unknown interpreted text role "issue".
Add verification to check if Request callback is callable (:issue:`2766`)
System Message: ERROR/3 (<stdin>, line 2414); backlink
Unknown interpreted text role "issue".
Port extras/qpsclient.py to Python 3 (:issue:`2849`)
System Message: ERROR/3 (<stdin>, line 2415); backlink
Unknown interpreted text role "issue".
Use getfullargspec under the scenes for Python 3 to stop DeprecationWarning (:issue:`2862`)
System Message: ERROR/3 (<stdin>, line 2416); backlink
Unknown interpreted text role "issue".
Update deprecated test aliases (:issue:`2876`)
System Message: ERROR/3 (<stdin>, line 2418); backlink
Unknown interpreted text role "issue".
Fix SitemapSpider support for alternate links (:issue:`2853`)
System Message: ERROR/3 (<stdin>, line 2419); backlink
Unknown interpreted text role "issue".
Docs
Added missing bullet point for the AUTOTHROTTLE_TARGET_CONCURRENCY setting. (:issue:`2756`)
System Message: ERROR/3 (<stdin>, line 2424); backlink
Unknown interpreted text role "issue".
Update Contributing docs, document new support channels (:issue:`2762`, issue:3038)
System Message: ERROR/3 (<stdin>, line 2426); backlink
Unknown interpreted text role "issue".
Include references to Scrapy subreddit in the docs
Fix broken links; use https:// for external links (:issue:`2978`, :issue:`2982`, :issue:`2958`)
System Message: ERROR/3 (<stdin>, line 2429); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2429); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2429); backlink
Unknown interpreted text role "issue".
Document CloseSpider extension better (:issue:`2759`)
System Message: ERROR/3 (<stdin>, line 2431); backlink
Unknown interpreted text role "issue".
Use pymongo.collection.Collection.insert_one() in MongoDB example (:issue:`2781`)
System Message: ERROR/3 (<stdin>, line 2432); backlink
Unknown interpreted text role "issue".
Spelling mistake and typos (:issue:`2828`, :issue:`2837`, :issue:`2884`, :issue:`2924`)
System Message: ERROR/3 (<stdin>, line 2434); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2434); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2434); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2434); backlink
Unknown interpreted text role "issue".
Clarify CSVFeedSpider.headers documentation (:issue:`2826`)
System Message: ERROR/3 (<stdin>, line 2436); backlink
Unknown interpreted text role "issue".
Document DontCloseSpider exception and clarify spider_idle (:issue:`2791`)
System Message: ERROR/3 (<stdin>, line 2437); backlink
Unknown interpreted text role "issue".
Update "Releases" section in README (:issue:`2764`)
System Message: ERROR/3 (<stdin>, line 2439); backlink
Unknown interpreted text role "issue".
Fix rst syntax in DOWNLOAD_FAIL_ON_DATALOSS docs (:issue:`2763`)
System Message: ERROR/3 (<stdin>, line 2440); backlink
Unknown interpreted text role "issue".
Small fix in description of startproject arguments (:issue:`2866`)
System Message: ERROR/3 (<stdin>, line 2441); backlink
Unknown interpreted text role "issue".
Clarify data types in Response.body docs (:issue:`2922`)
System Message: ERROR/3 (<stdin>, line 2442); backlink
Unknown interpreted text role "issue".
Add a note about request.meta['depth'] to DepthMiddleware docs (:issue:`2374`)
System Message: ERROR/3 (<stdin>, line 2443); backlink
Unknown interpreted text role "issue".
Add a note about request.meta['dont_merge_cookies'] to CookiesMiddleware docs (:issue:`2999`)
System Message: ERROR/3 (<stdin>, line 2444); backlink
Unknown interpreted text role "issue".
Up-to-date example of project structure (:issue:`2964`, :issue:`2976`)
System Message: ERROR/3 (<stdin>, line 2446); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2446); backlink
Unknown interpreted text role "issue".
A better example of ItemExporters usage (:issue:`2989`)
System Message: ERROR/3 (<stdin>, line 2447); backlink
Unknown interpreted text role "issue".
Document from_crawler methods for spider and downloader middlewares (:issue:`3019`)
System Message: ERROR/3 (<stdin>, line 2448); backlink
Unknown interpreted text role "issue".
Scrapy 1.4.0 (2017-05-18)
Scrapy 1.4 does not bring that many breathtaking new features but quite a few handy improvements nonetheless.
Scrapy now supports anonymous FTP sessions with customizable user and password via the new :setting:`FTP_USER` and :setting:`FTP_PASSWORD` settings. And if you're using Twisted version 17.1.0 or above, FTP is now available with Python 3.
System Message: ERROR/3 (<stdin>, line 2459); backlink
Unknown interpreted text role "setting".System Message: ERROR/3 (<stdin>, line 2459); backlink
Unknown interpreted text role "setting".There's a new :meth:`response.follow <scrapy.http.TextResponse.follow>` method for creating requests; it is now a recommended way to create Requests in Scrapy spiders. This method makes it easier to write correct spiders; response.follow has several advantages over creating scrapy.Request objects directly:
System Message: ERROR/3 (<stdin>, line 2464); backlink
Unknown interpreted text role "meth".- it handles relative URLs;
- it works properly with non-ascii URLs on non-UTF8 pages;
- in addition to absolute and relative URLs it supports Selectors; for <a> elements it can also extract their href values.
For example, instead of this:
for href in response.css('li.page a::attr(href)').extract():
url = response.urljoin(href)
yield scrapy.Request(url, self.parse, encoding=response.encoding)
One can now write this:
for a in response.css('li.page a'):
yield response.follow(a, self.parse)
Link extractors are also improved. They work similarly to what a regular modern browser would do: leading and trailing whitespace are removed from attributes (think href=" http://example.com") when building Link objects. This whitespace-stripping also happens for action attributes with FormRequest.
Please also note that link extractors do not canonicalize URLs by default anymore. This was puzzling users every now and then, and it's not what browsers do in fact, so we removed that extra transformation on extracted links.
For those of you wanting more control on the Referer: header that Scrapy sends when following links, you can set your own Referrer Policy. Prior to Scrapy 1.4, the default RefererMiddleware would simply and blindly set it to the URL of the response that generated the HTTP request (which could leak information on your URL seeds). By default, Scrapy now behaves much like your regular browser does. And this policy is fully customizable with W3C standard values (or with something really custom of your own if you wish). See :setting:`REFERRER_POLICY` for details.
System Message: ERROR/3 (<stdin>, line 2497); backlink
Unknown interpreted text role "setting".To make Scrapy spiders easier to debug, Scrapy logs more stats by default in 1.4: memory usage stats, detailed retry stats, detailed HTTP error code stats. A similar change is that HTTP cache path is also visible in logs now.
Last but not least, Scrapy now has the option to make JSON and XML items more human-readable, with newlines between items and even custom indenting offset, using the new :setting:`FEED_EXPORT_INDENT` setting.
System Message: ERROR/3 (<stdin>, line 2511); backlink
Unknown interpreted text role "setting".Enjoy! (Or read on for the rest of changes in this release.)
Deprecations and Backward Incompatible Changes
Default to canonicalize=False in :class:`scrapy.linkextractors.LinkExtractor <scrapy.linkextractors.lxmlhtml.LxmlLinkExtractor>` (:issue:`2537`, fixes :issue:`1941` and :issue:`1982`): warning, this is technically backward-incompatible
System Message: ERROR/3 (<stdin>, line 2520); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 2520); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2520); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2520); backlink
Unknown interpreted text role "issue".
Enable memusage extension by default (:issue:`2539`, fixes :issue:`2187`); this is technically backward-incompatible so please check if you have any non-default MEMUSAGE_*** options set.
System Message: ERROR/3 (<stdin>, line 2525); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2525); backlink
Unknown interpreted text role "issue".
EDITOR environment variable now takes precedence over EDITOR option defined in settings.py (:issue:`1829`); Scrapy default settings no longer depend on environment variables. This is technically a backward incompatible change.
System Message: ERROR/3 (<stdin>, line 2528); backlink
Unknown interpreted text role "issue".
Spider.make_requests_from_url is deprecated (:issue:`1728`, fixes :issue:`1495`).
System Message: ERROR/3 (<stdin>, line 2532); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2532); backlink
Unknown interpreted text role "issue".
New Features
Accept proxy credentials in :reqmeta:`proxy` request meta key (:issue:`2526`)
System Message: ERROR/3 (<stdin>, line 2538); backlink
Unknown interpreted text role "reqmeta".
System Message: ERROR/3 (<stdin>, line 2538); backlink
Unknown interpreted text role "issue".
Support brotli-compressed content; requires optional brotlipy (:issue:`2535`)
System Message: ERROR/3 (<stdin>, line 2539); backlink
Unknown interpreted text role "issue".
New :ref:`response.follow <response-follow-example>` shortcut for creating requests (:issue:`1940`)
System Message: ERROR/3 (<stdin>, line 2541); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 2541); backlink
Unknown interpreted text role "issue".
Added flags argument and attribute to :class:`Request <scrapy.http.Request>` objects (:issue:`2047`)
System Message: ERROR/3 (<stdin>, line 2543); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 2543); backlink
Unknown interpreted text role "issue".
Support Anonymous FTP (:issue:`2342`)
System Message: ERROR/3 (<stdin>, line 2545); backlink
Unknown interpreted text role "issue".
Added retry/count, retry/max_reached and retry/reason_count/<reason> stats to :class:`RetryMiddleware <scrapy.downloadermiddlewares.retry.RetryMiddleware>` (:issue:`2543`)
System Message: ERROR/3 (<stdin>, line 2546); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 2546); backlink
Unknown interpreted text role "issue".
Added httperror/response_ignored_count and httperror/response_ignored_status_count/<status> stats to :class:`HttpErrorMiddleware <scrapy.spidermiddlewares.httperror.HttpErrorMiddleware>` (:issue:`2566`)
System Message: ERROR/3 (<stdin>, line 2549); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 2549); backlink
Unknown interpreted text role "issue".
Customizable :setting:`Referrer policy <REFERRER_POLICY>` in :class:`RefererMiddleware <scrapy.spidermiddlewares.referer.RefererMiddleware>` (:issue:`2306`)
System Message: ERROR/3 (<stdin>, line 2552); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 2552); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 2552); backlink
Unknown interpreted text role "issue".
New data: URI download handler (:issue:`2334`, fixes :issue:`2156`)
System Message: ERROR/3 (<stdin>, line 2555); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2555); backlink
Unknown interpreted text role "issue".
Log cache directory when HTTP Cache is used (:issue:`2611`, fixes :issue:`2604`)
System Message: ERROR/3 (<stdin>, line 2556); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2556); backlink
Unknown interpreted text role "issue".
Warn users when project contains duplicate spider names (fixes :issue:`2181`)
System Message: ERROR/3 (<stdin>, line 2557); backlink
Unknown interpreted text role "issue".
scrapy.utils.datatypes.CaselessDict now accepts Mapping instances and not only dicts (:issue:`2646`)
System Message: ERROR/3 (<stdin>, line 2558); backlink
Unknown interpreted text role "issue".
:ref:`Media downloads <topics-media-pipeline>`, with :class:`~scrapy.pipelines.files.FilesPipeline` or :class:`~scrapy.pipelines.images.ImagesPipeline`, can now optionally handle HTTP redirects using the new :setting:`MEDIA_ALLOW_REDIRECTS` setting (:issue:`2616`, fixes :issue:`2004`)
System Message: ERROR/3 (<stdin>, line 2560); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 2560); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 2560); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 2560); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 2560); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2560); backlink
Unknown interpreted text role "issue".
Accept non-complete responses from websites using a new :setting:`DOWNLOAD_FAIL_ON_DATALOSS` setting (:issue:`2590`, fixes :issue:`2586`)
System Message: ERROR/3 (<stdin>, line 2565); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 2565); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2565); backlink
Unknown interpreted text role "issue".
Optional pretty-printing of JSON and XML items via :setting:`FEED_EXPORT_INDENT` setting (:issue:`2456`, fixes :issue:`1327`)
System Message: ERROR/3 (<stdin>, line 2567); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 2567); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2567); backlink
Unknown interpreted text role "issue".
Allow dropping fields in FormRequest.from_response formdata when None value is passed (:issue:`667`)
System Message: ERROR/3 (<stdin>, line 2569); backlink
Unknown interpreted text role "issue".
Per-request retry times with the new :reqmeta:`max_retry_times` meta key (:issue:`2642`)
System Message: ERROR/3 (<stdin>, line 2571); backlink
Unknown interpreted text role "reqmeta".
System Message: ERROR/3 (<stdin>, line 2571); backlink
Unknown interpreted text role "issue".
python -m scrapy as a more explicit alternative to scrapy command (:issue:`2740`)
System Message: ERROR/3 (<stdin>, line 2573); backlink
Unknown interpreted text role "issue".
Bug fixes
LinkExtractor now strips leading and trailing whitespaces from attributes (:issue:`2547`, fixes :issue:`1614`)
System Message: ERROR/3 (<stdin>, line 2582); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2582); backlink
Unknown interpreted text role "issue".
Properly handle whitespaces in action attribute in :class:`~scrapy.http.FormRequest` (:issue:`2548`)
System Message: ERROR/3 (<stdin>, line 2584); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 2584); backlink
Unknown interpreted text role "issue".
Buffer CONNECT response bytes from proxy until all HTTP headers are received (:issue:`2495`, fixes :issue:`2491`)
System Message: ERROR/3 (<stdin>, line 2586); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2586); backlink
Unknown interpreted text role "issue".
FTP downloader now works on Python 3, provided you use Twisted>=17.1 (:issue:`2599`)
System Message: ERROR/3 (<stdin>, line 2588); backlink
Unknown interpreted text role "issue".
Use body to choose response type after decompressing content (:issue:`2393`, fixes :issue:`2145`)
System Message: ERROR/3 (<stdin>, line 2590); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2590); backlink
Unknown interpreted text role "issue".
Always decompress Content-Encoding: gzip at :class:`HttpCompressionMiddleware <scrapy.downloadermiddlewares.httpcompression.HttpCompressionMiddleware>` stage (:issue:`2391`)
System Message: ERROR/3 (<stdin>, line 2592); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 2592); backlink
Unknown interpreted text role "issue".
Respect custom log level in Spider.custom_settings (:issue:`2581`, fixes :issue:`1612`)
System Message: ERROR/3 (<stdin>, line 2594); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2594); backlink
Unknown interpreted text role "issue".
'make htmlview' fix for macOS (:issue:`2661`)
System Message: ERROR/3 (<stdin>, line 2596); backlink
Unknown interpreted text role "issue".
Remove "commands" from the command list (:issue:`2695`)
System Message: ERROR/3 (<stdin>, line 2597); backlink
Unknown interpreted text role "issue".
Fix duplicate Content-Length header for POST requests with empty body (:issue:`2677`)
System Message: ERROR/3 (<stdin>, line 2598); backlink
Unknown interpreted text role "issue".
Properly cancel large downloads, i.e. above :setting:`DOWNLOAD_MAXSIZE` (:issue:`1616`)
System Message: ERROR/3 (<stdin>, line 2599); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 2599); backlink
Unknown interpreted text role "issue".
ImagesPipeline: fixed processing of transparent PNG images with palette (:issue:`2675`)
System Message: ERROR/3 (<stdin>, line 2600); backlink
Unknown interpreted text role "issue".
Cleanups & Refactoring
Tests: remove temp files and folders (:issue:`2570`), fixed ProjectUtilsTest on macOS (:issue:`2569`), use portable pypy for Linux on Travis CI (:issue:`2710`)
System Message: ERROR/3 (<stdin>, line 2606); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2606); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2606); backlink
Unknown interpreted text role "issue".
Separate building request from _requests_to_follow in CrawlSpider (:issue:`2562`)
System Message: ERROR/3 (<stdin>, line 2609); backlink
Unknown interpreted text role "issue".
Remove “Python 3 progress” badge (:issue:`2567`)
System Message: ERROR/3 (<stdin>, line 2610); backlink
Unknown interpreted text role "issue".
Add a couple more lines to .gitignore (:issue:`2557`)
System Message: ERROR/3 (<stdin>, line 2611); backlink
Unknown interpreted text role "issue".
Remove bumpversion prerelease configuration (:issue:`2159`)
System Message: ERROR/3 (<stdin>, line 2612); backlink
Unknown interpreted text role "issue".
Add codecov.yml file (:issue:`2750`)
System Message: ERROR/3 (<stdin>, line 2613); backlink
Unknown interpreted text role "issue".
Set context factory implementation based on Twisted version (:issue:`2577`, fixes :issue:`2560`)
System Message: ERROR/3 (<stdin>, line 2614); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2614); backlink
Unknown interpreted text role "issue".
Add omitted self arguments in default project middleware template (:issue:`2595`)
System Message: ERROR/3 (<stdin>, line 2616); backlink
Unknown interpreted text role "issue".
Remove redundant slot.add_request() call in ExecutionEngine (:issue:`2617`)
System Message: ERROR/3 (<stdin>, line 2617); backlink
Unknown interpreted text role "issue".
Catch more specific os.error exception in scrapy.pipelines.files.FSFilesStore (:issue:`2644`)
System Message: ERROR/3 (<stdin>, line 2618); backlink
Unknown interpreted text role "issue".
Change "localhost" test server certificate (:issue:`2720`)
System Message: ERROR/3 (<stdin>, line 2620); backlink
Unknown interpreted text role "issue".
Remove unused MEMUSAGE_REPORT setting (:issue:`2576`)
System Message: ERROR/3 (<stdin>, line 2621); backlink
Unknown interpreted text role "issue".
Documentation
Binary mode is required for exporters (:issue:`2564`, fixes :issue:`2553`)
System Message: ERROR/3 (<stdin>, line 2626); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2626); backlink
Unknown interpreted text role "issue".
Mention issue with :meth:`FormRequest.from_response <scrapy.http.FormRequest.from_response>` due to bug in lxml (:issue:`2572`)
System Message: ERROR/3 (<stdin>, line 2627); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 2627); backlink
Unknown interpreted text role "issue".
Use single quotes uniformly in templates (:issue:`2596`)
System Message: ERROR/3 (<stdin>, line 2629); backlink
Unknown interpreted text role "issue".
Document :reqmeta:`ftp_user` and :reqmeta:`ftp_password` meta keys (:issue:`2587`)
System Message: ERROR/3 (<stdin>, line 2630); backlink
Unknown interpreted text role "reqmeta".
System Message: ERROR/3 (<stdin>, line 2630); backlink
Unknown interpreted text role "reqmeta".
System Message: ERROR/3 (<stdin>, line 2630); backlink
Unknown interpreted text role "issue".
Removed section on deprecated contrib/ (:issue:`2636`)
System Message: ERROR/3 (<stdin>, line 2631); backlink
Unknown interpreted text role "issue".
Recommend Anaconda when installing Scrapy on Windows (:issue:`2477`, fixes :issue:`2475`)
System Message: ERROR/3 (<stdin>, line 2632); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2632); backlink
Unknown interpreted text role "issue".
FAQ: rewrite note on Python 3 support on Windows (:issue:`2690`)
System Message: ERROR/3 (<stdin>, line 2634); backlink
Unknown interpreted text role "issue".
Rearrange selector sections (:issue:`2705`)
System Message: ERROR/3 (<stdin>, line 2635); backlink
Unknown interpreted text role "issue".
Remove __nonzero__ from :class:`~scrapy.selector.SelectorList` docs (:issue:`2683`)
System Message: ERROR/3 (<stdin>, line 2636); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 2636); backlink
Unknown interpreted text role "issue".
Mention how to disable request filtering in documentation of :setting:`DUPEFILTER_CLASS` setting (:issue:`2714`)
System Message: ERROR/3 (<stdin>, line 2638); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 2638); backlink
Unknown interpreted text role "issue".
Add sphinx_rtd_theme to docs setup readme (:issue:`2668`)
System Message: ERROR/3 (<stdin>, line 2640); backlink
Unknown interpreted text role "issue".
Open file in text mode in JSON item writer example (:issue:`2729`)
System Message: ERROR/3 (<stdin>, line 2641); backlink
Unknown interpreted text role "issue".
Clarify allowed_domains example (:issue:`2670`)
System Message: ERROR/3 (<stdin>, line 2642); backlink
Unknown interpreted text role "issue".
Scrapy 1.3.3 (2017-03-10)
Bug fixes
Make SpiderLoader raise ImportError again by default for missing dependencies and wrong :setting:`SPIDER_MODULES`. These exceptions were silenced as warnings since 1.3.0. A new setting is introduced to toggle between warning or exception if needed ; see :setting:`SPIDER_LOADER_WARN_ONLY` for details.
System Message: ERROR/3 (<stdin>, line 2653); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 2653); backlink
Unknown interpreted text role "setting".
Scrapy 1.3.2 (2017-02-13)
Bug fixes
Preserve request class when converting to/from dicts (utils.reqser) (:issue:`2510`).
System Message: ERROR/3 (<stdin>, line 2667); backlink
Unknown interpreted text role "issue".
Use consistent selectors for author field in tutorial (:issue:`2551`).
System Message: ERROR/3 (<stdin>, line 2668); backlink
Unknown interpreted text role "issue".
Fix TLS compatibility in Twisted 17+ (:issue:`2558`)
System Message: ERROR/3 (<stdin>, line 2669); backlink
Unknown interpreted text role "issue".
Scrapy 1.3.1 (2017-02-08)
New features
Support 'True' and 'False' string values for boolean settings (:issue:`2519`); you can now do something like scrapy crawl myspider -s REDIRECT_ENABLED=False.
System Message: ERROR/3 (<stdin>, line 2679); backlink
Unknown interpreted text role "issue".
Support kwargs with response.xpath() to use :ref:`XPath variables <topics-selectors-xpath-variables>` and ad-hoc namespaces declarations ; this requires at least Parsel v1.1 (:issue:`2457`).
System Message: ERROR/3 (<stdin>, line 2681); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 2681); backlink
Unknown interpreted text role "issue".
Add support for Python 3.6 (:issue:`2485`).
System Message: ERROR/3 (<stdin>, line 2684); backlink
Unknown interpreted text role "issue".
Run tests on PyPy (warning: some tests still fail, so PyPy is not supported yet).
Bug fixes
Enforce DNS_TIMEOUT setting (:issue:`2496`).
System Message: ERROR/3 (<stdin>, line 2690); backlink
Unknown interpreted text role "issue".
Fix :command:`view` command ; it was a regression in v1.3.0 (:issue:`2503`).
System Message: ERROR/3 (<stdin>, line 2691); backlink
Unknown interpreted text role "command".
System Message: ERROR/3 (<stdin>, line 2691); backlink
Unknown interpreted text role "issue".
Fix tests regarding *_EXPIRES settings with Files/Images pipelines (:issue:`2460`).
System Message: ERROR/3 (<stdin>, line 2692); backlink
Unknown interpreted text role "issue".
Fix name of generated pipeline class when using basic project template (:issue:`2466`).
System Message: ERROR/3 (<stdin>, line 2693); backlink
Unknown interpreted text role "issue".
Fix compatibility with Twisted 17+ (:issue:`2496`, :issue:`2528`).
System Message: ERROR/3 (<stdin>, line 2694); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2694); backlink
Unknown interpreted text role "issue".
Fix scrapy.Item inheritance on Python 3.6 (:issue:`2511`).
System Message: ERROR/3 (<stdin>, line 2695); backlink
Unknown interpreted text role "issue".
Enforce numeric values for components order in SPIDER_MIDDLEWARES, DOWNLOADER_MIDDLEWARES, EXTENSIONS and SPIDER_CONTRACTS (:issue:`2420`).
System Message: ERROR/3 (<stdin>, line 2696); backlink
Unknown interpreted text role "issue".
Documentation
Reword Code of Conduct section and upgrade to Contributor Covenant v1.4 (:issue:`2469`).
System Message: ERROR/3 (<stdin>, line 2702); backlink
Unknown interpreted text role "issue".
Clarify that passing spider arguments converts them to spider attributes (:issue:`2483`).
System Message: ERROR/3 (<stdin>, line 2704); backlink
Unknown interpreted text role "issue".
Document formid argument on FormRequest.from_response() (:issue:`2497`).
System Message: ERROR/3 (<stdin>, line 2706); backlink
Unknown interpreted text role "issue".
Add .rst extension to README files (:issue:`2507`).
System Message: ERROR/3 (<stdin>, line 2707); backlink
Unknown interpreted text role "issue".
Mention LevelDB cache storage backend (:issue:`2525`).
System Message: ERROR/3 (<stdin>, line 2708); backlink
Unknown interpreted text role "issue".
Use yield in sample callback code (:issue:`2533`).
System Message: ERROR/3 (<stdin>, line 2709); backlink
Unknown interpreted text role "issue".
Add note about HTML entities decoding with .re()/.re_first() (:issue:`1704`).
System Message: ERROR/3 (<stdin>, line 2710); backlink
Unknown interpreted text role "issue".
Typos (:issue:`2512`, :issue:`2534`, :issue:`2531`).
System Message: ERROR/3 (<stdin>, line 2711); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2711); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2711); backlink
Unknown interpreted text role "issue".
Cleanups
Remove redundant check in MetaRefreshMiddleware (:issue:`2542`).
System Message: ERROR/3 (<stdin>, line 2716); backlink
Unknown interpreted text role "issue".
Faster checks in LinkExtractor for allow/deny patterns (:issue:`2538`).
System Message: ERROR/3 (<stdin>, line 2717); backlink
Unknown interpreted text role "issue".
Remove dead code supporting old Twisted versions (:issue:`2544`).
System Message: ERROR/3 (<stdin>, line 2718); backlink
Unknown interpreted text role "issue".
Scrapy 1.3.0 (2016-12-21)
This release comes rather soon after 1.2.2 for one main reason: it was found out that releases since 0.18 up to 1.2.2 (included) use some backported code from Twisted (scrapy.xlib.tx.*), even if newer Twisted modules are available. Scrapy now uses twisted.web.client and twisted.internet.endpoints directly. (See also cleanups below.)
As it is a major change, we wanted to get the bug fix out quickly while not breaking any projects using the 1.2 series.
New Features
MailSender now accepts single strings as values for to and cc arguments (:issue:`2272`)
System Message: ERROR/3 (<stdin>, line 2739); backlink
Unknown interpreted text role "issue".
scrapy fetch url, scrapy shell url and fetch(url) inside Scrapy shell now follow HTTP redirections by default (:issue:`2290`); See :command:`fetch` and :command:`shell` for details.
System Message: ERROR/3 (<stdin>, line 2741); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2741); backlink
Unknown interpreted text role "command".
System Message: ERROR/3 (<stdin>, line 2741); backlink
Unknown interpreted text role "command".
HttpErrorMiddleware now logs errors with INFO level instead of DEBUG; this is technically backward incompatible so please check your log parsers.
By default, logger names now use a long-form path, e.g. [scrapy.extensions.logstats], instead of the shorter "top-level" variant of prior releases (e.g. [scrapy]); this is backward incompatible if you have log parsers expecting the short logger name part. You can switch back to short logger names using :setting:`LOG_SHORT_NAMES` set to True.
System Message: ERROR/3 (<stdin>, line 2746); backlink
Unknown interpreted text role "setting".
Dependencies & Cleanups
- Scrapy now requires Twisted >= 13.1 which is the case for many Linux distributions already.
- As a consequence, we got rid of scrapy.xlib.tx.* modules, which copied some of Twisted code for users stuck with an "old" Twisted version
- ChunkedTransferMiddleware is deprecated and removed from the default downloader middlewares.
Scrapy 1.2.3 (2017-03-03)
- Packaging fix: disallow unsupported Twisted versions in setup.py
Scrapy 1.2.2 (2016-12-06)
Bug fixes
Fix a cryptic traceback when a pipeline fails on open_spider() (:issue:`2011`)
System Message: ERROR/3 (<stdin>, line 2778); backlink
Unknown interpreted text role "issue".
Fix embedded IPython shell variables (fixing :issue:`396` that re-appeared in 1.2.0, fixed in :issue:`2418`)
System Message: ERROR/3 (<stdin>, line 2779); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2779); backlink
Unknown interpreted text role "issue".
A couple of patches when dealing with robots.txt:
handle (non-standard) relative sitemap URLs (:issue:`2390`)
System Message: ERROR/3 (<stdin>, line 2783); backlink
Unknown interpreted text role "issue".
handle non-ASCII URLs and User-Agents in Python 2 (:issue:`2373`)
System Message: ERROR/3 (<stdin>, line 2784); backlink
Unknown interpreted text role "issue".
Documentation
Document "download_latency" key in Request's meta dict (:issue:`2033`)
System Message: ERROR/3 (<stdin>, line 2789); backlink
Unknown interpreted text role "issue".
Remove page on (deprecated & unsupported) Ubuntu packages from ToC (:issue:`2335`)
System Message: ERROR/3 (<stdin>, line 2790); backlink
Unknown interpreted text role "issue".
A few fixed typos (:issue:`2346`, :issue:`2369`, :issue:`2369`, :issue:`2380`) and clarifications (:issue:`2354`, :issue:`2325`, :issue:`2414`)
System Message: ERROR/3 (<stdin>, line 2791); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2791); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2791); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2791); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2791); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2791); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2791); backlink
Unknown interpreted text role "issue".
Other changes
Advertize conda-forge as Scrapy's official conda channel (:issue:`2387`)
System Message: ERROR/3 (<stdin>, line 2797); backlink
Unknown interpreted text role "issue".
More helpful error messages when trying to use .css() or .xpath() on non-Text Responses (:issue:`2264`)
System Message: ERROR/3 (<stdin>, line 2798); backlink
Unknown interpreted text role "issue".
startproject command now generates a sample middlewares.py file (:issue:`2335`)
System Message: ERROR/3 (<stdin>, line 2800); backlink
Unknown interpreted text role "issue".
Add more dependencies' version info in scrapy version verbose output (:issue:`2404`)
System Message: ERROR/3 (<stdin>, line 2801); backlink
Unknown interpreted text role "issue".
Remove all *.pyc files from source distribution (:issue:`2386`)
System Message: ERROR/3 (<stdin>, line 2802); backlink
Unknown interpreted text role "issue".
Scrapy 1.2.1 (2016-10-21)
Bug fixes
Include OpenSSL's more permissive default ciphers when establishing TLS/SSL connections (:issue:`2314`).
System Message: ERROR/3 (<stdin>, line 2815); backlink
Unknown interpreted text role "issue".
Fix "Location" HTTP header decoding on non-ASCII URL redirects (:issue:`2321`).
System Message: ERROR/3 (<stdin>, line 2817); backlink
Unknown interpreted text role "issue".
Documentation
Fix JsonWriterPipeline example (:issue:`2302`).
System Message: ERROR/3 (<stdin>, line 2822); backlink
Unknown interpreted text role "issue".
Various notes: :issue:`2330` on spider names, :issue:`2329` on middleware methods processing order, :issue:`2327` on getting multi-valued HTTP headers as lists.
System Message: ERROR/3 (<stdin>, line 2823); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2823); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2823); backlink
Unknown interpreted text role "issue".
Other changes
Removed www. from start_urls in built-in spider templates (:issue:`2299`).
System Message: ERROR/3 (<stdin>, line 2830); backlink
Unknown interpreted text role "issue".
Scrapy 1.2.0 (2016-10-03)
New Features
New :setting:`FEED_EXPORT_ENCODING` setting to customize the encoding used when writing items to a file. This can be used to turn off \uXXXX escapes in JSON output. This is also useful for those wanting something else than UTF-8 for XML or CSV output (:issue:`2034`).
System Message: ERROR/3 (<stdin>, line 2841); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 2841); backlink
Unknown interpreted text role "issue".
startproject command now supports an optional destination directory to override the default one based on the project name (:issue:`2005`).
System Message: ERROR/3 (<stdin>, line 2846); backlink
Unknown interpreted text role "issue".
New :setting:`SCHEDULER_DEBUG` setting to log requests serialization failures (:issue:`1610`).
System Message: ERROR/3 (<stdin>, line 2848); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 2848); backlink
Unknown interpreted text role "issue".
JSON encoder now supports serialization of set instances (:issue:`2058`).
System Message: ERROR/3 (<stdin>, line 2850); backlink
Unknown interpreted text role "issue".
Interpret application/json-amazonui-streaming as TextResponse (:issue:`1503`).
System Message: ERROR/3 (<stdin>, line 2851); backlink
Unknown interpreted text role "issue".
scrapy is imported by default when using shell tools (:command:`shell`, :ref:`inspect_response <topics-shell-inspect-response>`) (:issue:`2248`).
System Message: ERROR/3 (<stdin>, line 2852); backlink
Unknown interpreted text role "command".
System Message: ERROR/3 (<stdin>, line 2852); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 2852); backlink
Unknown interpreted text role "issue".
Bug fixes
DefaultRequestHeaders middleware now runs before UserAgent middleware (:issue:`2088`). Warning: this is technically backward incompatible, though we consider this a bug fix.
System Message: ERROR/3 (<stdin>, line 2858); backlink
Unknown interpreted text role "issue".
HTTP cache extension and plugins that use the .scrapy data directory now work outside projects (:issue:`1581`). Warning: this is technically backward incompatible, though we consider this a bug fix.
System Message: ERROR/3 (<stdin>, line 2861); backlink
Unknown interpreted text role "issue".
Selector does not allow passing both response and text anymore (:issue:`2153`).
System Message: ERROR/3 (<stdin>, line 2864); backlink
Unknown interpreted text role "issue".
Fixed logging of wrong callback name with scrapy parse (:issue:`2169`).
System Message: ERROR/3 (<stdin>, line 2866); backlink
Unknown interpreted text role "issue".
Fix for an odd gzip decompression bug (:issue:`1606`).
System Message: ERROR/3 (<stdin>, line 2867); backlink
Unknown interpreted text role "issue".
Fix for selected callbacks when using CrawlSpider with :command:`scrapy parse <parse>` (:issue:`2225`).
System Message: ERROR/3 (<stdin>, line 2868); backlink
Unknown interpreted text role "command".
System Message: ERROR/3 (<stdin>, line 2868); backlink
Unknown interpreted text role "issue".
Fix for invalid JSON and XML files when spider yields no items (:issue:`872`).
System Message: ERROR/3 (<stdin>, line 2870); backlink
Unknown interpreted text role "issue".
Implement flush() fpr StreamLogger avoiding a warning in logs (:issue:`2125`).
System Message: ERROR/3 (<stdin>, line 2871); backlink
Unknown interpreted text role "issue".
Refactoring
canonicalize_url has been moved to w3lib.url (:issue:`2168`).
System Message: ERROR/3 (<stdin>, line 2876); backlink
Unknown interpreted text role "issue".
Tests & Requirements
Scrapy's new requirements baseline is Debian 8 "Jessie". It was previously Ubuntu 12.04 Precise. What this means in practice is that we run continuous integration tests with these (main) packages versions at a minimum: Twisted 14.0, pyOpenSSL 0.14, lxml 3.4.
Scrapy may very well work with older versions of these packages (the code base still has switches for older Twisted versions for example) but it is not guaranteed (because it's not tested anymore).
Documentation
Grammar fixes: :issue:`2128`, :issue:`1566`.
System Message: ERROR/3 (<stdin>, line 2896); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2896); backlink
Unknown interpreted text role "issue".
Download stats badge removed from README (:issue:`2160`).
System Message: ERROR/3 (<stdin>, line 2897); backlink
Unknown interpreted text role "issue".
New Scrapy :ref:`architecture diagram <topics-architecture>` (:issue:`2165`).
System Message: ERROR/3 (<stdin>, line 2898); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 2898); backlink
Unknown interpreted text role "issue".
Updated Response parameters documentation (:issue:`2197`).
System Message: ERROR/3 (<stdin>, line 2899); backlink
Unknown interpreted text role "issue".
Reworded misleading :setting:`RANDOMIZE_DOWNLOAD_DELAY` description (:issue:`2190`).
System Message: ERROR/3 (<stdin>, line 2900); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 2900); backlink
Unknown interpreted text role "issue".
Add StackOverflow as a support channel (:issue:`2257`).
System Message: ERROR/3 (<stdin>, line 2901); backlink
Unknown interpreted text role "issue".
Scrapy 1.1.4 (2017-03-03)
- Packaging fix: disallow unsupported Twisted versions in setup.py
Scrapy 1.1.3 (2016-09-22)
Bug fixes
Class attributes for subclasses of ImagesPipeline and FilesPipeline work as they did before 1.1.1 (:issue:`2243`, fixes :issue:`2198`)
System Message: ERROR/3 (<stdin>, line 2918); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2918); backlink
Unknown interpreted text role "issue".
Documentation
:ref:`Overview <intro-overview>` and :ref:`tutorial <intro-tutorial>` rewritten to use http://toscrape.com websites (:issue:`2236`, :issue:`2249`, :issue:`2252`).
System Message: ERROR/3 (<stdin>, line 2924); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 2924); backlink
Unknown interpreted text role "ref".
System Message: ERROR/3 (<stdin>, line 2924); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2924); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2924); backlink
Unknown interpreted text role "issue".
Scrapy 1.1.2 (2016-08-18)
Bug fixes
Introduce a missing :setting:`IMAGES_STORE_S3_ACL` setting to override the default ACL policy in ImagesPipeline when uploading images to S3 (note that default ACL policy is "private" -- instead of "public-read" -- since Scrapy 1.1.0)
System Message: ERROR/3 (<stdin>, line 2936); backlink
Unknown interpreted text role "setting".
:setting:`IMAGES_EXPIRES` default value set back to 90 (the regression was introduced in 1.1.1)
System Message: ERROR/3 (<stdin>, line 2940); backlink
Unknown interpreted text role "setting".
Scrapy 1.1.1 (2016-07-13)
Bug fixes
Add "Host" header in CONNECT requests to HTTPS proxies (:issue:`2069`)
System Message: ERROR/3 (<stdin>, line 2951); backlink
Unknown interpreted text role "issue".
Use response body when choosing response class (:issue:`2001`, fixes :issue:`2000`)
System Message: ERROR/3 (<stdin>, line 2952); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2952); backlink
Unknown interpreted text role "issue".
Do not fail on canonicalizing URLs with wrong netlocs (:issue:`2038`, fixes :issue:`2010`)
System Message: ERROR/3 (<stdin>, line 2954); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2954); backlink
Unknown interpreted text role "issue".
a few fixes for HttpCompressionMiddleware (and SitemapSpider):
Do not decode HEAD responses (:issue:`2008`, fixes :issue:`1899`)
System Message: ERROR/3 (<stdin>, line 2958); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2958); backlink
Unknown interpreted text role "issue".
Handle charset parameter in gzip Content-Type header (:issue:`2050`, fixes :issue:`2049`)
System Message: ERROR/3 (<stdin>, line 2959); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2959); backlink
Unknown interpreted text role "issue".
Do not decompress gzip octet-stream responses (:issue:`2065`, fixes :issue:`2063`)
System Message: ERROR/3 (<stdin>, line 2961); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2961); backlink
Unknown interpreted text role "issue".
Catch (and ignore with a warning) exception when verifying certificate against IP-address hosts (:issue:`2094`, fixes :issue:`2092`)
System Message: ERROR/3 (<stdin>, line 2964); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2964); backlink
Unknown interpreted text role "issue".
Make FilesPipeline and ImagesPipeline backward compatible again regarding the use of legacy class attributes for customization (:issue:`1989`, fixes :issue:`1985`)
System Message: ERROR/3 (<stdin>, line 2966); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2966); backlink
Unknown interpreted text role "issue".
New features
Enable genspider command outside project folder (:issue:`2052`)
System Message: ERROR/3 (<stdin>, line 2974); backlink
Unknown interpreted text role "issue".
Retry HTTPS CONNECT TunnelError by default (:issue:`1974`)
System Message: ERROR/3 (<stdin>, line 2975); backlink
Unknown interpreted text role "issue".
Documentation
FEED_TEMPDIR setting at lexicographical position (:commit:`9b3c72c`)
System Message: ERROR/3 (<stdin>, line 2981); backlink
Unknown interpreted text role "commit".
Use idiomatic .extract_first() in overview (:issue:`1994`)
System Message: ERROR/3 (<stdin>, line 2982); backlink
Unknown interpreted text role "issue".
Update years in copyright notice (:commit:`c2c8036`)
System Message: ERROR/3 (<stdin>, line 2983); backlink
Unknown interpreted text role "commit".
Add information and example on errbacks (:issue:`1995`)
System Message: ERROR/3 (<stdin>, line 2984); backlink
Unknown interpreted text role "issue".
Use "url" variable in downloader middleware example (:issue:`2015`)
System Message: ERROR/3 (<stdin>, line 2985); backlink
Unknown interpreted text role "issue".
Grammar fixes (:issue:`2054`, :issue:`2120`)
System Message: ERROR/3 (<stdin>, line 2986); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 2986); backlink
Unknown interpreted text role "issue".
New FAQ entry on using BeautifulSoup in spider callbacks (:issue:`2048`)
System Message: ERROR/3 (<stdin>, line 2987); backlink
Unknown interpreted text role "issue".
Add notes about Scrapy not working on Windows with Python 3 (:issue:`2060`)
System Message: ERROR/3 (<stdin>, line 2988); backlink
Unknown interpreted text role "issue".
Encourage complete titles in pull requests (:issue:`2026`)
System Message: ERROR/3 (<stdin>, line 2989); backlink
Unknown interpreted text role "issue".
Tests
Upgrade py.test requirement on Travis CI and Pin pytest-cov to 2.2.1 (:issue:`2095`)
System Message: ERROR/3 (<stdin>, line 2994); backlink
Unknown interpreted text role "issue".
Scrapy 1.1.0 (2016-05-11)
This 1.1 release brings a lot of interesting features and bug fixes:
Scrapy 1.1 has beta Python 3 support (requires Twisted >= 15.5). See :ref:`news_betapy3` for more details and some limitations.
System Message: ERROR/3 (<stdin>, line 3003); backlink
Unknown interpreted text role "ref".
Hot new features:
Item loaders now support nested loaders (:issue:`1467`).
System Message: ERROR/3 (<stdin>, line 3007); backlink
Unknown interpreted text role "issue".
FormRequest.from_response improvements (:issue:`1382`, :issue:`1137`).
System Message: ERROR/3 (<stdin>, line 3008); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3008); backlink
Unknown interpreted text role "issue".
Added setting :setting:`AUTOTHROTTLE_TARGET_CONCURRENCY` and improved AutoThrottle docs (:issue:`1324`).
System Message: ERROR/3 (<stdin>, line 3009); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 3009); backlink
Unknown interpreted text role "issue".
Added response.text to get body as unicode (:issue:`1730`).
System Message: ERROR/3 (<stdin>, line 3011); backlink
Unknown interpreted text role "issue".
Anonymous S3 connections (:issue:`1358`).
System Message: ERROR/3 (<stdin>, line 3012); backlink
Unknown interpreted text role "issue".
Deferreds in downloader middlewares (:issue:`1473`). This enables better robots.txt handling (:issue:`1471`).
System Message: ERROR/3 (<stdin>, line 3013); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3013); backlink
Unknown interpreted text role "issue".
HTTP caching now follows RFC2616 more closely, added settings :setting:`HTTPCACHE_ALWAYS_STORE` and :setting:`HTTPCACHE_IGNORE_RESPONSE_CACHE_CONTROLS` (:issue:`1151`).
System Message: ERROR/3 (<stdin>, line 3015); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 3015); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 3015); backlink
Unknown interpreted text role "issue".
Selectors were extracted to the parsel library (:issue:`1409`). This means you can use Scrapy Selectors without Scrapy and also upgrade the selectors engine without needing to upgrade Scrapy.
System Message: ERROR/3 (<stdin>, line 3018); backlink
Unknown interpreted text role "issue".
HTTPS downloader now does TLS protocol negotiation by default, instead of forcing TLS 1.0. You can also set the SSL/TLS method using the new :setting:`DOWNLOADER_CLIENT_TLS_METHOD`.
System Message: ERROR/3 (<stdin>, line 3021); backlink
Unknown interpreted text role "setting".
These bug fixes may require your attention:
Don't retry bad requests (HTTP 400) by default (:issue:`1289`). If you need the old behavior, add 400 to :setting:`RETRY_HTTP_CODES`.
System Message: ERROR/3 (<stdin>, line 3027); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3027); backlink
Unknown interpreted text role "setting".
Fix shell files argument handling (:issue:`1710`, :issue:`1550`). If you try scrapy shell index.html it will try to load the URL http://index.html, use scrapy shell ./index.html to load a local file.
System Message: ERROR/3 (<stdin>, line 3029); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3029); backlink
Unknown interpreted text role "issue".
Robots.txt compliance is now enabled by default for newly-created projects (:issue:`1724`). Scrapy will also wait for robots.txt to be downloaded before proceeding with the crawl (:issue:`1735`). If you want to disable this behavior, update :setting:`ROBOTSTXT_OBEY` in settings.py file after creating a new project.
System Message: ERROR/3 (<stdin>, line 3032); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3032); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3032); backlink
Unknown interpreted text role "setting".
Exporters now work on unicode, instead of bytes by default (:issue:`1080`). If you use :class:`~scrapy.exporters.PythonItemExporter`, you may want to update your code to disable binary mode which is now deprecated.
System Message: ERROR/3 (<stdin>, line 3037); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3037); backlink
Unknown interpreted text role "class".
Accept XML node names containing dots as valid (:issue:`1533`).
System Message: ERROR/3 (<stdin>, line 3040); backlink
Unknown interpreted text role "issue".
When uploading files or images to S3 (with FilesPipeline or ImagesPipeline), the default ACL policy is now "private" instead of "public" Warning: backward incompatible!. You can use :setting:`FILES_STORE_S3_ACL` to change it.
System Message: ERROR/3 (<stdin>, line 3041); backlink
Unknown interpreted text role "setting".
We've reimplemented canonicalize_url() for more correct output, especially for URLs with non-ASCII characters (:issue:`1947`). This could change link extractors output compared to previous Scrapy versions. This may also invalidate some cache entries you could still have from pre-1.1 runs. Warning: backward incompatible!.
System Message: ERROR/3 (<stdin>, line 3045); backlink
Unknown interpreted text role "issue".
Keep reading for more details on other improvements and bug fixes.
Beta Python 3 Support
We have been hard at work to make Scrapy run on Python 3. As a result, now you can run spiders on Python 3.3, 3.4 and 3.5 (Twisted >= 15.5 required). Some features are still missing (and some may never be ported).
Almost all builtin extensions/middlewares are expected to work. However, we are aware of some limitations in Python 3:
- Scrapy does not work on Windows with Python 3
- Sending emails is not supported
- FTP download handler is not supported
- Telnet console is not supported
Additional New Features and Enhancements
Scrapy now has a Code of Conduct (:issue:`1681`).
System Message: ERROR/3 (<stdin>, line 3075); backlink
Unknown interpreted text role "issue".
Command line tool now has completion for zsh (:issue:`934`).
System Message: ERROR/3 (<stdin>, line 3076); backlink
Unknown interpreted text role "issue".
Improvements to scrapy shell:
Support for bpython and configure preferred Python shell via SCRAPY_PYTHON_SHELL (:issue:`1100`, :issue:`1444`).
System Message: ERROR/3 (<stdin>, line 3079); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3079); backlink
Unknown interpreted text role "issue".
Support URLs without scheme (:issue:`1498`) Warning: backward incompatible!
System Message: ERROR/3 (<stdin>, line 3081); backlink
Unknown interpreted text role "issue".
Bring back support for relative file path (:issue:`1710`, :issue:`1550`).
System Message: ERROR/3 (<stdin>, line 3083); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3083); backlink
Unknown interpreted text role "issue".
Added :setting:`MEMUSAGE_CHECK_INTERVAL_SECONDS` setting to change default check interval (:issue:`1282`).
System Message: ERROR/3 (<stdin>, line 3085); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 3085); backlink
Unknown interpreted text role "issue".
Download handlers are now lazy-loaded on first request using their scheme (:issue:`1390`, :issue:`1421`).
System Message: ERROR/3 (<stdin>, line 3087); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3087); backlink
Unknown interpreted text role "issue".
HTTPS download handlers do not force TLS 1.0 anymore; instead, OpenSSL's SSLv23_method()/TLS_method() is used allowing to try negotiating with the remote hosts the highest TLS protocol version it can (:issue:`1794`, :issue:`1629`).
System Message: ERROR/3 (<stdin>, line 3089); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3089); backlink
Unknown interpreted text role "issue".
RedirectMiddleware now skips the status codes from handle_httpstatus_list on spider attribute or in Request's meta key (:issue:`1334`, :issue:`1364`, :issue:`1447`).
System Message: ERROR/3 (<stdin>, line 3093); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3093); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3093); backlink
Unknown interpreted text role "issue".
Form submission:
now works with <button> elements too (:issue:`1469`).
System Message: ERROR/3 (<stdin>, line 3099); backlink
Unknown interpreted text role "issue".
an empty string is now used for submit buttons without a value (:issue:`1472`)
System Message: ERROR/3 (<stdin>, line 3100); backlink
Unknown interpreted text role "issue".
Dict-like settings now have per-key priorities (:issue:`1135`, :issue:`1149` and :issue:`1586`).
System Message: ERROR/3 (<stdin>, line 3103); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3103); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3103); backlink
Unknown interpreted text role "issue".
Sending non-ASCII emails (:issue:`1662`)
System Message: ERROR/3 (<stdin>, line 3105); backlink
Unknown interpreted text role "issue".
CloseSpider and SpiderState extensions now get disabled if no relevant setting is set (:issue:`1723`, :issue:`1725`).
System Message: ERROR/3 (<stdin>, line 3106); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3106); backlink
Unknown interpreted text role "issue".
Added method ExecutionEngine.close (:issue:`1423`).
System Message: ERROR/3 (<stdin>, line 3108); backlink
Unknown interpreted text role "issue".
Added method CrawlerRunner.create_crawler (:issue:`1528`).
System Message: ERROR/3 (<stdin>, line 3109); backlink
Unknown interpreted text role "issue".
Scheduler priority queue can now be customized via :setting:`SCHEDULER_PRIORITY_QUEUE` (:issue:`1822`).
System Message: ERROR/3 (<stdin>, line 3110); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 3110); backlink
Unknown interpreted text role "issue".
.pps links are now ignored by default in link extractors (:issue:`1835`).
System Message: ERROR/3 (<stdin>, line 3112); backlink
Unknown interpreted text role "issue".
temporary data folder for FTP and S3 feed storages can be customized using a new :setting:`FEED_TEMPDIR` setting (:issue:`1847`).
System Message: ERROR/3 (<stdin>, line 3113); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 3113); backlink
Unknown interpreted text role "issue".
FilesPipeline and ImagesPipeline settings are now instance attributes instead of class attributes, enabling spider-specific behaviors (:issue:`1891`).
System Message: ERROR/3 (<stdin>, line 3115); backlink
Unknown interpreted text role "issue".
JsonItemExporter now formats opening and closing square brackets on their own line (first and last lines of output file) (:issue:`1950`).
System Message: ERROR/3 (<stdin>, line 3117); backlink
Unknown interpreted text role "issue".
If available, botocore is used for S3FeedStorage, S3DownloadHandler and S3FilesStore (:issue:`1761`, :issue:`1883`).
System Message: ERROR/3 (<stdin>, line 3119); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3119); backlink
Unknown interpreted text role "issue".
Tons of documentation updates and related fixes (:issue:`1291`, :issue:`1302`, :issue:`1335`, :issue:`1683`, :issue:`1660`, :issue:`1642`, :issue:`1721`, :issue:`1727`, :issue:`1879`).
System Message: ERROR/3 (<stdin>, line 3121); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3121); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3121); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3121); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3121); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3121); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3121); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3121); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3121); backlink
Unknown interpreted text role "issue".
Other refactoring, optimizations and cleanup (:issue:`1476`, :issue:`1481`, :issue:`1477`, :issue:`1315`, :issue:`1290`, :issue:`1750`, :issue:`1881`).
System Message: ERROR/3 (<stdin>, line 3124); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3124); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3124); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3124); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3124); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3124); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3124); backlink
Unknown interpreted text role "issue".
Deprecations and Removals
Added to_bytes and to_unicode, deprecated str_to_unicode and unicode_to_str functions (:issue:`778`).
System Message: ERROR/3 (<stdin>, line 3133); backlink
Unknown interpreted text role "issue".
binary_is_text is introduced, to replace use of isbinarytext (but with inverse return value) (:issue:`1851`)
System Message: ERROR/3 (<stdin>, line 3135); backlink
Unknown interpreted text role "issue".
The optional_features set has been removed (:issue:`1359`).
System Message: ERROR/3 (<stdin>, line 3137); backlink
Unknown interpreted text role "issue".
The --lsprof command line option has been removed (:issue:`1689`). Warning: backward incompatible, but doesn't break user code.
System Message: ERROR/3 (<stdin>, line 3138); backlink
Unknown interpreted text role "issue".
The following datatypes were deprecated (:issue:`1720`):
System Message: ERROR/3 (<stdin>, line 3140); backlink
Unknown interpreted text role "issue".
- scrapy.utils.datatypes.MultiValueDictKeyError
- scrapy.utils.datatypes.MultiValueDict
- scrapy.utils.datatypes.SiteNode
The previously bundled scrapy.xlib.pydispatch library was deprecated and replaced by pydispatcher.
Relocations
telnetconsole was relocated to extensions/ (:issue:`1524`).
System Message: ERROR/3 (<stdin>, line 3153); backlink
Unknown interpreted text role "issue".
- Note: telnet is not enabled on Python 3 (https://github.com/scrapy/scrapy/pull/1524#issuecomment-146985595)
Bugfixes
Scrapy does not retry requests that got a HTTP 400 Bad Request response anymore (:issue:`1289`). Warning: backward incompatible!
System Message: ERROR/3 (<stdin>, line 3164); backlink
Unknown interpreted text role "issue".
Support empty password for http_proxy config (:issue:`1274`).
System Message: ERROR/3 (<stdin>, line 3166); backlink
Unknown interpreted text role "issue".
Interpret application/x-json as TextResponse (:issue:`1333`).
System Message: ERROR/3 (<stdin>, line 3167); backlink
Unknown interpreted text role "issue".
Support link rel attribute with multiple values (:issue:`1201`).
System Message: ERROR/3 (<stdin>, line 3168); backlink
Unknown interpreted text role "issue".
Fixed scrapy.http.FormRequest.from_response when there is a <base> tag (:issue:`1564`).
System Message: ERROR/3 (<stdin>, line 3169); backlink
Unknown interpreted text role "issue".
Fixed :setting:`TEMPLATES_DIR` handling (:issue:`1575`).
System Message: ERROR/3 (<stdin>, line 3171); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 3171); backlink
Unknown interpreted text role "issue".
Various FormRequest fixes (:issue:`1595`, :issue:`1596`, :issue:`1597`).
System Message: ERROR/3 (<stdin>, line 3172); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3172); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3172); backlink
Unknown interpreted text role "issue".
Makes _monkeypatches more robust (:issue:`1634`).
System Message: ERROR/3 (<stdin>, line 3173); backlink
Unknown interpreted text role "issue".
Fixed bug on XMLItemExporter with non-string fields in items (:issue:`1738`).
System Message: ERROR/3 (<stdin>, line 3174); backlink
Unknown interpreted text role "issue".
Fixed startproject command in macOS (:issue:`1635`).
System Message: ERROR/3 (<stdin>, line 3176); backlink
Unknown interpreted text role "issue".
Fixed :class:`~scrapy.exporters.PythonItemExporter` and CSVExporter for non-string item types (:issue:`1737`).
System Message: ERROR/3 (<stdin>, line 3177); backlink
Unknown interpreted text role "class".
System Message: ERROR/3 (<stdin>, line 3177); backlink
Unknown interpreted text role "issue".
Various logging related fixes (:issue:`1294`, :issue:`1419`, :issue:`1263`, :issue:`1624`, :issue:`1654`, :issue:`1722`, :issue:`1726` and :issue:`1303`).
System Message: ERROR/3 (<stdin>, line 3179); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3179); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3179); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3179); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3179); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3179); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3179); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3179); backlink
Unknown interpreted text role "issue".
Fixed bug in utils.template.render_templatefile() (:issue:`1212`).
System Message: ERROR/3 (<stdin>, line 3181); backlink
Unknown interpreted text role "issue".
sitemaps extraction from robots.txt is now case-insensitive (:issue:`1902`).
System Message: ERROR/3 (<stdin>, line 3182); backlink
Unknown interpreted text role "issue".
HTTPS+CONNECT tunnels could get mixed up when using multiple proxies to same remote host (:issue:`1912`).
System Message: ERROR/3 (<stdin>, line 3183); backlink
Unknown interpreted text role "issue".
Scrapy 1.0.7 (2017-03-03)
- Packaging fix: disallow unsupported Twisted versions in setup.py
Scrapy 1.0.6 (2016-05-04)
FIX: RetryMiddleware is now robust to non-standard HTTP status codes (:issue:`1857`)
System Message: ERROR/3 (<stdin>, line 3198); backlink
Unknown interpreted text role "issue".
FIX: Filestorage HTTP cache was checking wrong modified time (:issue:`1875`)
System Message: ERROR/3 (<stdin>, line 3199); backlink
Unknown interpreted text role "issue".
DOC: Support for Sphinx 1.4+ (:issue:`1893`)
System Message: ERROR/3 (<stdin>, line 3200); backlink
Unknown interpreted text role "issue".
DOC: Consistency in selectors examples (:issue:`1869`)
System Message: ERROR/3 (<stdin>, line 3201); backlink
Unknown interpreted text role "issue".
Scrapy 1.0.5 (2016-02-04)
FIX: [Backport] Ignore bogus links in LinkExtractors (fixes :issue:`907`, :commit:`108195e`)
System Message: ERROR/3 (<stdin>, line 3208); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3208); backlink
Unknown interpreted text role "commit".
TST: Changed buildbot makefile to use 'pytest' (:commit:`1f3d90a`)
System Message: ERROR/3 (<stdin>, line 3209); backlink
Unknown interpreted text role "commit".
DOC: Fixed typos in tutorial and media-pipeline (:commit:`808a9ea` and :commit:`803bd87`)
System Message: ERROR/3 (<stdin>, line 3210); backlink
Unknown interpreted text role "commit".
System Message: ERROR/3 (<stdin>, line 3210); backlink
Unknown interpreted text role "commit".
DOC: Add AjaxCrawlMiddleware to DOWNLOADER_MIDDLEWARES_BASE in settings docs (:commit:`aa94121`)
System Message: ERROR/3 (<stdin>, line 3211); backlink
Unknown interpreted text role "commit".
Scrapy 1.0.4 (2015-12-30)
Ignoring xlib/tx folder, depending on Twisted version. (:commit:`7dfa979`)
System Message: ERROR/3 (<stdin>, line 3218); backlink
Unknown interpreted text role "commit".
Run on new travis-ci infra (:commit:`6e42f0b`)
System Message: ERROR/3 (<stdin>, line 3219); backlink
Unknown interpreted text role "commit".
Spelling fixes (:commit:`823a1cc`)
System Message: ERROR/3 (<stdin>, line 3220); backlink
Unknown interpreted text role "commit".
escape nodename in xmliter regex (:commit:`da3c155`)
System Message: ERROR/3 (<stdin>, line 3221); backlink
Unknown interpreted text role "commit".
test xml nodename with dots (:commit:`4418fc3`)
System Message: ERROR/3 (<stdin>, line 3222); backlink
Unknown interpreted text role "commit".
TST don't use broken Pillow version in tests (:commit:`a55078c`)
System Message: ERROR/3 (<stdin>, line 3223); backlink
Unknown interpreted text role "commit".
disable log on version command. closes #1426 (:commit:`86fc330`)
System Message: ERROR/3 (<stdin>, line 3224); backlink
Unknown interpreted text role "commit".
disable log on startproject command (:commit:`db4c9fe`)
System Message: ERROR/3 (<stdin>, line 3225); backlink
Unknown interpreted text role "commit".
Add PyPI download stats badge (:commit:`df2b944`)
System Message: ERROR/3 (<stdin>, line 3226); backlink
Unknown interpreted text role "commit".
don't run tests twice on Travis if a PR is made from a scrapy/scrapy branch (:commit:`a83ab41`)
System Message: ERROR/3 (<stdin>, line 3227); backlink
Unknown interpreted text role "commit".
Add Python 3 porting status badge to the README (:commit:`73ac80d`)
System Message: ERROR/3 (<stdin>, line 3228); backlink
Unknown interpreted text role "commit".
fixed RFPDupeFilter persistence (:commit:`97d080e`)
System Message: ERROR/3 (<stdin>, line 3229); backlink
Unknown interpreted text role "commit".
TST a test to show that dupefilter persistence is not working (:commit:`97f2fb3`)
System Message: ERROR/3 (<stdin>, line 3230); backlink
Unknown interpreted text role "commit".
explicit close file on file:// scheme handler (:commit:`d9b4850`)
System Message: ERROR/3 (<stdin>, line 3231); backlink
Unknown interpreted text role "commit".
Disable dupefilter in shell (:commit:`c0d0734`)
System Message: ERROR/3 (<stdin>, line 3232); backlink
Unknown interpreted text role "commit".
DOC: Add captions to toctrees which appear in sidebar (:commit:`aa239ad`)
System Message: ERROR/3 (<stdin>, line 3233); backlink
Unknown interpreted text role "commit".
DOC Removed pywin32 from install instructions as it's already declared as dependency. (:commit:`10eb400`)
System Message: ERROR/3 (<stdin>, line 3234); backlink
Unknown interpreted text role "commit".
Added installation notes about using Conda for Windows and other OSes. (:commit:`1c3600a`)
System Message: ERROR/3 (<stdin>, line 3235); backlink
Unknown interpreted text role "commit".
Fixed minor grammar issues. (:commit:`7f4ddd5`)
System Message: ERROR/3 (<stdin>, line 3236); backlink
Unknown interpreted text role "commit".
fixed a typo in the documentation. (:commit:`b71f677`)
System Message: ERROR/3 (<stdin>, line 3237); backlink
Unknown interpreted text role "commit".
Version 1 now exists (:commit:`5456c0e`)
System Message: ERROR/3 (<stdin>, line 3238); backlink
Unknown interpreted text role "commit".
fix another invalid xpath error (:commit:`0a1366e`)
System Message: ERROR/3 (<stdin>, line 3239); backlink
Unknown interpreted text role "commit".
fix ValueError: Invalid XPath: //div/[id="not-exists"]/text() on selectors.rst (:commit:`ca8d60f`)
System Message: ERROR/3 (<stdin>, line 3240); backlink
Unknown interpreted text role "commit".
Typos corrections (:commit:`7067117`)
System Message: ERROR/3 (<stdin>, line 3241); backlink
Unknown interpreted text role "commit".
fix typos in downloader-middleware.rst and exceptions.rst, middlware -> middleware (:commit:`32f115c`)
System Message: ERROR/3 (<stdin>, line 3242); backlink
Unknown interpreted text role "commit".
Add note to Ubuntu install section about Debian compatibility (:commit:`23fda69`)
System Message: ERROR/3 (<stdin>, line 3243); backlink
Unknown interpreted text role "commit".
Replace alternative macOS install workaround with virtualenv (:commit:`98b63ee`)
System Message: ERROR/3 (<stdin>, line 3244); backlink
Unknown interpreted text role "commit".
Reference Homebrew's homepage for installation instructions (:commit:`1925db1`)
System Message: ERROR/3 (<stdin>, line 3245); backlink
Unknown interpreted text role "commit".
Add oldest supported tox version to contributing docs (:commit:`5d10d6d`)
System Message: ERROR/3 (<stdin>, line 3246); backlink
Unknown interpreted text role "commit".
Note in install docs about pip being already included in python>=2.7.9 (:commit:`85c980e`)
System Message: ERROR/3 (<stdin>, line 3247); backlink
Unknown interpreted text role "commit".
Add non-python dependencies to Ubuntu install section in the docs (:commit:`fbd010d`)
System Message: ERROR/3 (<stdin>, line 3248); backlink
Unknown interpreted text role "commit".
Add macOS installation section to docs (:commit:`d8f4cba`)
System Message: ERROR/3 (<stdin>, line 3249); backlink
Unknown interpreted text role "commit".
DOC(ENH): specify path to rtd theme explicitly (:commit:`de73b1a`)
System Message: ERROR/3 (<stdin>, line 3250); backlink
Unknown interpreted text role "commit".
minor: scrapy.Spider docs grammar (:commit:`1ddcc7b`)
System Message: ERROR/3 (<stdin>, line 3251); backlink
Unknown interpreted text role "commit".
Make common practices sample code match the comments (:commit:`1b85bcf`)
System Message: ERROR/3 (<stdin>, line 3252); backlink
Unknown interpreted text role "commit".
nextcall repetitive calls (heartbeats). (:commit:`55f7104`)
System Message: ERROR/3 (<stdin>, line 3253); backlink
Unknown interpreted text role "commit".
Backport fix compatibility with Twisted 15.4.0 (:commit:`b262411`)
System Message: ERROR/3 (<stdin>, line 3254); backlink
Unknown interpreted text role "commit".
pin pytest to 2.7.3 (:commit:`a6535c2`)
System Message: ERROR/3 (<stdin>, line 3255); backlink
Unknown interpreted text role "commit".
Merge pull request #1512 from mgedmin/patch-1 (:commit:`8876111`)
System Message: ERROR/3 (<stdin>, line 3256); backlink
Unknown interpreted text role "commit".
Merge pull request #1513 from mgedmin/patch-2 (:commit:`5d4daf8`)
System Message: ERROR/3 (<stdin>, line 3257); backlink
Unknown interpreted text role "commit".
Typo (:commit:`f8d0682`)
System Message: ERROR/3 (<stdin>, line 3258); backlink
Unknown interpreted text role "commit".
Fix list formatting (:commit:`5f83a93`)
System Message: ERROR/3 (<stdin>, line 3259); backlink
Unknown interpreted text role "commit".
fix Scrapy squeue tests after recent changes to queuelib (:commit:`3365c01`)
System Message: ERROR/3 (<stdin>, line 3260); backlink
Unknown interpreted text role "commit".
Merge pull request #1475 from rweindl/patch-1 (:commit:`2d688cd`)
System Message: ERROR/3 (<stdin>, line 3261); backlink
Unknown interpreted text role "commit".
Update tutorial.rst (:commit:`fbc1f25`)
System Message: ERROR/3 (<stdin>, line 3262); backlink
Unknown interpreted text role "commit".
Merge pull request #1449 from rhoekman/patch-1 (:commit:`7d6538c`)
System Message: ERROR/3 (<stdin>, line 3263); backlink
Unknown interpreted text role "commit".
Small grammatical change (:commit:`8752294`)
System Message: ERROR/3 (<stdin>, line 3264); backlink
Unknown interpreted text role "commit".
Add openssl version to version command (:commit:`13c45ac`)
System Message: ERROR/3 (<stdin>, line 3265); backlink
Unknown interpreted text role "commit".
Scrapy 1.0.3 (2015-08-11)
add service_identity to Scrapy install_requires (:commit:`cbc2501`)
System Message: ERROR/3 (<stdin>, line 3272); backlink
Unknown interpreted text role "commit".
Workaround for travis#296 (:commit:`66af9cd`)
System Message: ERROR/3 (<stdin>, line 3273); backlink
Unknown interpreted text role "commit".
Scrapy 1.0.2 (2015-08-06)
Twisted 15.3.0 does not raises PicklingError serializing lambda functions (:commit:`b04dd7d`)
System Message: ERROR/3 (<stdin>, line 3280); backlink
Unknown interpreted text role "commit".
Minor method name fix (:commit:`6f85c7f`)
System Message: ERROR/3 (<stdin>, line 3281); backlink
Unknown interpreted text role "commit".
minor: scrapy.Spider grammar and clarity (:commit:`9c9d2e0`)
System Message: ERROR/3 (<stdin>, line 3282); backlink
Unknown interpreted text role "commit".
Put a blurb about support channels in CONTRIBUTING (:commit:`c63882b`)
System Message: ERROR/3 (<stdin>, line 3283); backlink
Unknown interpreted text role "commit".
Fixed typos (:commit:`a9ae7b0`)
System Message: ERROR/3 (<stdin>, line 3284); backlink
Unknown interpreted text role "commit".
Fix doc reference. (:commit:`7c8a4fe`)
System Message: ERROR/3 (<stdin>, line 3285); backlink
Unknown interpreted text role "commit".
Scrapy 1.0.1 (2015-07-01)
Unquote request path before passing to FTPClient, it already escape paths (:commit:`cc00ad2`)
System Message: ERROR/3 (<stdin>, line 3292); backlink
Unknown interpreted text role "commit".
include tests/ to source distribution in MANIFEST.in (:commit:`eca227e`)
System Message: ERROR/3 (<stdin>, line 3293); backlink
Unknown interpreted text role "commit".
DOC Fix SelectJmes documentation (:commit:`b8567bc`)
System Message: ERROR/3 (<stdin>, line 3294); backlink
Unknown interpreted text role "commit".
DOC Bring Ubuntu and Archlinux outside of Windows subsection (:commit:`392233f`)
System Message: ERROR/3 (<stdin>, line 3295); backlink
Unknown interpreted text role "commit".
DOC remove version suffix from Ubuntu package (:commit:`5303c66`)
System Message: ERROR/3 (<stdin>, line 3296); backlink
Unknown interpreted text role "commit".
DOC Update release date for 1.0 (:commit:`c89fa29`)
System Message: ERROR/3 (<stdin>, line 3297); backlink
Unknown interpreted text role "commit".
Scrapy 1.0.0 (2015-06-19)
You will find a lot of new features and bugfixes in this major release. Make sure to check our updated :ref:`overview <intro-overview>` to get a glance of some of the changes, along with our brushed :ref:`tutorial <intro-tutorial>`.
System Message: ERROR/3 (<stdin>, line 3304); backlink
Unknown interpreted text role "ref".System Message: ERROR/3 (<stdin>, line 3304); backlink
Unknown interpreted text role "ref".Support for returning dictionaries in spiders
Declaring and returning Scrapy Items is no longer necessary to collect the scraped data from your spider, you can now return explicit dictionaries instead.
Classic version
class MyItem(scrapy.Item):
url = scrapy.Field()
class MySpider(scrapy.Spider):
def parse(self, response):
return MyItem(url=response.url)
New version
class MySpider(scrapy.Spider):
def parse(self, response):
return {'url': response.url}
Per-spider settings (GSoC 2014)
Last Google Summer of Code project accomplished an important redesign of the mechanism used for populating settings, introducing explicit priorities to override any given setting. As an extension of that goal, we included a new level of priority for settings that act exclusively for a single spider, allowing them to redefine project settings.
Start using it by defining a :attr:`~scrapy.spiders.Spider.custom_settings` class variable in your spider:
System Message: ERROR/3 (<stdin>, line 3343); backlink
Unknown interpreted text role "attr".class MySpider(scrapy.Spider):
custom_settings = {
"DOWNLOAD_DELAY": 5.0,
"RETRY_ENABLED": False,
}
Read more about settings population: :ref:`topics-settings`
System Message: ERROR/3 (<stdin>, line 3352); backlink
Unknown interpreted text role "ref".Python Logging
Scrapy 1.0 has moved away from Twisted logging to support Python built in’s as default logging system. We’re maintaining backward compatibility for most of the old custom interface to call logging functions, but you’ll get warnings to switch to the Python logging API entirely.
Old version
from scrapy import log
log.msg('MESSAGE', log.INFO)
New version
import logging
logging.info('MESSAGE')
Logging with spiders remains the same, but on top of the :meth:`~scrapy.spiders.Spider.log` method you’ll have access to a custom :attr:`~scrapy.spiders.Spider.logger` created for the spider to issue log events:
System Message: ERROR/3 (<stdin>, line 3376); backlink
Unknown interpreted text role "meth".System Message: ERROR/3 (<stdin>, line 3376); backlink
Unknown interpreted text role "attr".class MySpider(scrapy.Spider):
def parse(self, response):
self.logger.info('Response received')
Read more in the logging documentation: :ref:`topics-logging`
System Message: ERROR/3 (<stdin>, line 3387); backlink
Unknown interpreted text role "ref".Crawler API refactoring (GSoC 2014)
Another milestone for last Google Summer of Code was a refactoring of the internal API, seeking a simpler and easier usage. Check new core interface in: :ref:`topics-api`
System Message: ERROR/3 (<stdin>, line 3392); backlink
Unknown interpreted text role "ref".A common situation where you will face these changes is while running Scrapy from scripts. Here’s a quick example of how to run a Spider manually with the new API:
from scrapy.crawler import CrawlerProcess
process = CrawlerProcess({
'USER_AGENT': 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)'
})
process.crawl(MySpider)
process.start()
Bear in mind this feature is still under development and its API may change until it reaches a stable status.
See more examples for scripts running Scrapy: :ref:`topics-practices`
System Message: ERROR/3 (<stdin>, line 3413); backlink
Unknown interpreted text role "ref".Module Relocations
There’s been a large rearrangement of modules trying to improve the general structure of Scrapy. Main changes were separating various subpackages into new projects and dissolving both scrapy.contrib and scrapy.contrib_exp into top level packages. Backward compatibility was kept among internal relocations, while importing deprecated modules expect warnings indicating their new place.
Full list of relocations
Outsourced packages
Note
These extensions went through some minor changes, e.g. some setting names were changed. Please check the documentation in each new repository to get familiar with the new usage.
| Old location | New location |
|---|---|
| scrapy.commands.deploy | scrapyd-client (See other alternatives here: :ref:`topics-deploy`) System Message: ERROR/3 (<stdin>, line 3441); backlink Unknown interpreted text role "ref". |
| scrapy.contrib.djangoitem | scrapy-djangoitem |
| scrapy.webservice | scrapy-jsonrpc |
scrapy.contrib_exp and scrapy.contrib dissolutions
| Old location | New location |
|---|---|
| scrapy.contrib_exp.downloadermiddleware.decompression | scrapy.downloadermiddlewares.decompression |
| scrapy.contrib_exp.iterators | scrapy.utils.iterators |
| scrapy.contrib.downloadermiddleware | scrapy.downloadermiddlewares |
| scrapy.contrib.exporter | scrapy.exporters |
| scrapy.contrib.linkextractors | scrapy.linkextractors |
| scrapy.contrib.loader | scrapy.loader |
| scrapy.contrib.loader.processor | scrapy.loader.processors |
| scrapy.contrib.pipeline | scrapy.pipelines |
| scrapy.contrib.spidermiddleware | scrapy.spidermiddlewares |
| scrapy.contrib.spiders | scrapy.spiders |
|
scrapy.extensions.* |
Plural renames and Modules unification
| Old location | New location |
|---|---|
| scrapy.command | scrapy.commands |
| scrapy.dupefilter | scrapy.dupefilters |
| scrapy.linkextractor | scrapy.linkextractors |
| scrapy.spider | scrapy.spiders |
| scrapy.squeue | scrapy.squeues |
| scrapy.statscol | scrapy.statscollectors |
| scrapy.utils.decorator | scrapy.utils.decorators |
Class renames
| Old location | New location |
|---|---|
| scrapy.spidermanager.SpiderManager | scrapy.spiderloader.SpiderLoader |
Settings renames
| Old location | New location |
|---|---|
| SPIDER_MANAGER_CLASS | SPIDER_LOADER_CLASS |
Changelog
New Features and Enhancements
Python logging (:issue:`1060`, :issue:`1235`, :issue:`1236`, :issue:`1240`, :issue:`1259`, :issue:`1278`, :issue:`1286`)
System Message: ERROR/3 (<stdin>, line 3533); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3533); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3533); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3533); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3533); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3533); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3533); backlink
Unknown interpreted text role "issue".
FEED_EXPORT_FIELDS option (:issue:`1159`, :issue:`1224`)
System Message: ERROR/3 (<stdin>, line 3535); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3535); backlink
Unknown interpreted text role "issue".
Dns cache size and timeout options (:issue:`1132`)
System Message: ERROR/3 (<stdin>, line 3536); backlink
Unknown interpreted text role "issue".
support namespace prefix in xmliter_lxml (:issue:`963`)
System Message: ERROR/3 (<stdin>, line 3537); backlink
Unknown interpreted text role "issue".
Reactor threadpool max size setting (:issue:`1123`)
System Message: ERROR/3 (<stdin>, line 3538); backlink
Unknown interpreted text role "issue".
Allow spiders to return dicts. (:issue:`1081`)
System Message: ERROR/3 (<stdin>, line 3539); backlink
Unknown interpreted text role "issue".
Add Response.urljoin() helper (:issue:`1086`)
System Message: ERROR/3 (<stdin>, line 3540); backlink
Unknown interpreted text role "issue".
look in ~/.config/scrapy.cfg for user config (:issue:`1098`)
System Message: ERROR/3 (<stdin>, line 3541); backlink
Unknown interpreted text role "issue".
handle TLS SNI (:issue:`1101`)
System Message: ERROR/3 (<stdin>, line 3542); backlink
Unknown interpreted text role "issue".
Selectorlist extract first (:issue:`624`, :issue:`1145`)
System Message: ERROR/3 (<stdin>, line 3543); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3543); backlink
Unknown interpreted text role "issue".
Added JmesSelect (:issue:`1016`)
System Message: ERROR/3 (<stdin>, line 3544); backlink
Unknown interpreted text role "issue".
add gzip compression to filesystem http cache backend (:issue:`1020`)
System Message: ERROR/3 (<stdin>, line 3545); backlink
Unknown interpreted text role "issue".
CSS support in link extractors (:issue:`983`)
System Message: ERROR/3 (<stdin>, line 3546); backlink
Unknown interpreted text role "issue".
httpcache dont_cache meta #19 #689 (:issue:`821`)
System Message: ERROR/3 (<stdin>, line 3547); backlink
Unknown interpreted text role "issue".
add signal to be sent when request is dropped by the scheduler (:issue:`961`)
System Message: ERROR/3 (<stdin>, line 3548); backlink
Unknown interpreted text role "issue".
avoid download large response (:issue:`946`)
System Message: ERROR/3 (<stdin>, line 3550); backlink
Unknown interpreted text role "issue".
Allow to specify the quotechar in CSVFeedSpider (:issue:`882`)
System Message: ERROR/3 (<stdin>, line 3551); backlink
Unknown interpreted text role "issue".
Add referer to "Spider error processing" log message (:issue:`795`)
System Message: ERROR/3 (<stdin>, line 3552); backlink
Unknown interpreted text role "issue".
process robots.txt once (:issue:`896`)
System Message: ERROR/3 (<stdin>, line 3553); backlink
Unknown interpreted text role "issue".
GSoC Per-spider settings (:issue:`854`)
System Message: ERROR/3 (<stdin>, line 3554); backlink
Unknown interpreted text role "issue".
Add project name validation (:issue:`817`)
System Message: ERROR/3 (<stdin>, line 3555); backlink
Unknown interpreted text role "issue".
GSoC API cleanup (:issue:`816`, :issue:`1128`, :issue:`1147`, :issue:`1148`, :issue:`1156`, :issue:`1185`, :issue:`1187`, :issue:`1258`, :issue:`1268`, :issue:`1276`, :issue:`1285`, :issue:`1284`)
System Message: ERROR/3 (<stdin>, line 3556); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3556); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3556); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3556); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3556); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3556); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3556); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3556); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3556); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3556); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3556); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3556); backlink
Unknown interpreted text role "issue".
Be more responsive with IO operations (:issue:`1074` and :issue:`1075`)
System Message: ERROR/3 (<stdin>, line 3559); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3559); backlink
Unknown interpreted text role "issue".
Do leveldb compaction for httpcache on closing (:issue:`1297`)
System Message: ERROR/3 (<stdin>, line 3560); backlink
Unknown interpreted text role "issue".
Deprecations and Removals
Deprecate htmlparser link extractor (:issue:`1205`)
System Message: ERROR/3 (<stdin>, line 3564); backlink
Unknown interpreted text role "issue".
remove deprecated code from FeedExporter (:issue:`1155`)
System Message: ERROR/3 (<stdin>, line 3565); backlink
Unknown interpreted text role "issue".
a leftover for.15 compatibility (:issue:`925`)
System Message: ERROR/3 (<stdin>, line 3566); backlink
Unknown interpreted text role "issue".
drop support for CONCURRENT_REQUESTS_PER_SPIDER (:issue:`895`)
System Message: ERROR/3 (<stdin>, line 3567); backlink
Unknown interpreted text role "issue".
Drop old engine code (:issue:`911`)
System Message: ERROR/3 (<stdin>, line 3568); backlink
Unknown interpreted text role "issue".
Deprecate SgmlLinkExtractor (:issue:`777`)
System Message: ERROR/3 (<stdin>, line 3569); backlink
Unknown interpreted text role "issue".
Relocations
Move exporters/__init__.py to exporters.py (:issue:`1242`)
System Message: ERROR/3 (<stdin>, line 3573); backlink
Unknown interpreted text role "issue".
Move base classes to their packages (:issue:`1218`, :issue:`1233`)
System Message: ERROR/3 (<stdin>, line 3574); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3574); backlink
Unknown interpreted text role "issue".
Module relocation (:issue:`1181`, :issue:`1210`)
System Message: ERROR/3 (<stdin>, line 3575); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3575); backlink
Unknown interpreted text role "issue".
rename SpiderManager to SpiderLoader (:issue:`1166`)
System Message: ERROR/3 (<stdin>, line 3576); backlink
Unknown interpreted text role "issue".
Remove djangoitem (:issue:`1177`)
System Message: ERROR/3 (<stdin>, line 3577); backlink
Unknown interpreted text role "issue".
remove scrapy deploy command (:issue:`1102`)
System Message: ERROR/3 (<stdin>, line 3578); backlink
Unknown interpreted text role "issue".
dissolve contrib_exp (:issue:`1134`)
System Message: ERROR/3 (<stdin>, line 3579); backlink
Unknown interpreted text role "issue".
Deleted bin folder from root, fixes #913 (:issue:`914`)
System Message: ERROR/3 (<stdin>, line 3580); backlink
Unknown interpreted text role "issue".
Remove jsonrpc based webservice (:issue:`859`)
System Message: ERROR/3 (<stdin>, line 3581); backlink
Unknown interpreted text role "issue".
Move Test cases under project root dir (:issue:`827`, :issue:`841`)
System Message: ERROR/3 (<stdin>, line 3582); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3582); backlink
Unknown interpreted text role "issue".
Fix backward incompatibility for relocated paths in settings (:issue:`1267`)
System Message: ERROR/3 (<stdin>, line 3583); backlink
Unknown interpreted text role "issue".
Documentation
CrawlerProcess documentation (:issue:`1190`)
System Message: ERROR/3 (<stdin>, line 3588); backlink
Unknown interpreted text role "issue".
Favoring web scraping over screen scraping in the descriptions (:issue:`1188`)
System Message: ERROR/3 (<stdin>, line 3589); backlink
Unknown interpreted text role "issue".
Some improvements for Scrapy tutorial (:issue:`1180`)
System Message: ERROR/3 (<stdin>, line 3591); backlink
Unknown interpreted text role "issue".
Documenting Files Pipeline together with Images Pipeline (:issue:`1150`)
System Message: ERROR/3 (<stdin>, line 3592); backlink
Unknown interpreted text role "issue".
deployment docs tweaks (:issue:`1164`)
System Message: ERROR/3 (<stdin>, line 3593); backlink
Unknown interpreted text role "issue".
Added deployment section covering scrapyd-deploy and shub (:issue:`1124`)
System Message: ERROR/3 (<stdin>, line 3594); backlink
Unknown interpreted text role "issue".
Adding more settings to project template (:issue:`1073`)
System Message: ERROR/3 (<stdin>, line 3595); backlink
Unknown interpreted text role "issue".
some improvements to overview page (:issue:`1106`)
System Message: ERROR/3 (<stdin>, line 3596); backlink
Unknown interpreted text role "issue".
Updated link in docs/topics/architecture.rst (:issue:`647`)
System Message: ERROR/3 (<stdin>, line 3597); backlink
Unknown interpreted text role "issue".
DOC reorder topics (:issue:`1022`)
System Message: ERROR/3 (<stdin>, line 3598); backlink
Unknown interpreted text role "issue".
updating list of Request.meta special keys (:issue:`1071`)
System Message: ERROR/3 (<stdin>, line 3599); backlink
Unknown interpreted text role "issue".
DOC document download_timeout (:issue:`898`)
System Message: ERROR/3 (<stdin>, line 3600); backlink
Unknown interpreted text role "issue".
DOC simplify extension docs (:issue:`893`)
System Message: ERROR/3 (<stdin>, line 3601); backlink
Unknown interpreted text role "issue".
Leaks docs (:issue:`894`)
System Message: ERROR/3 (<stdin>, line 3602); backlink
Unknown interpreted text role "issue".
DOC document from_crawler method for item pipelines (:issue:`904`)
System Message: ERROR/3 (<stdin>, line 3603); backlink
Unknown interpreted text role "issue".
Spider_error doesn't support deferreds (:issue:`1292`)
System Message: ERROR/3 (<stdin>, line 3604); backlink
Unknown interpreted text role "issue".
Corrections & Sphinx related fixes (:issue:`1220`, :issue:`1219`, :issue:`1196`, :issue:`1172`, :issue:`1171`, :issue:`1169`, :issue:`1160`, :issue:`1154`, :issue:`1127`, :issue:`1112`, :issue:`1105`, :issue:`1041`, :issue:`1082`, :issue:`1033`, :issue:`944`, :issue:`866`, :issue:`864`, :issue:`796`, :issue:`1260`, :issue:`1271`, :issue:`1293`, :issue:`1298`)
System Message: ERROR/3 (<stdin>, line 3605); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3605); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3605); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3605); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3605); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3605); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3605); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3605); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3605); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3605); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3605); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3605); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3605); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3605); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3605); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3605); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3605); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3605); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3605); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3605); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3605); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3605); backlink
Unknown interpreted text role "issue".
Bugfixes
Item multi inheritance fix (:issue:`353`, :issue:`1228`)
System Message: ERROR/3 (<stdin>, line 3613); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3613); backlink
Unknown interpreted text role "issue".
ItemLoader.load_item: iterate over copy of fields (:issue:`722`)
System Message: ERROR/3 (<stdin>, line 3614); backlink
Unknown interpreted text role "issue".
Fix Unhandled error in Deferred (RobotsTxtMiddleware) (:issue:`1131`, :issue:`1197`)
System Message: ERROR/3 (<stdin>, line 3615); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3615); backlink
Unknown interpreted text role "issue".
Force to read DOWNLOAD_TIMEOUT as int (:issue:`954`)
System Message: ERROR/3 (<stdin>, line 3617); backlink
Unknown interpreted text role "issue".
scrapy.utils.misc.load_object should print full traceback (:issue:`902`)
System Message: ERROR/3 (<stdin>, line 3618); backlink
Unknown interpreted text role "issue".
Fix bug for ".local" host name (:issue:`878`)
System Message: ERROR/3 (<stdin>, line 3619); backlink
Unknown interpreted text role "issue".
Fix for Enabled extensions, middlewares, pipelines info not printed anymore (:issue:`879`)
System Message: ERROR/3 (<stdin>, line 3620); backlink
Unknown interpreted text role "issue".
fix dont_merge_cookies bad behaviour when set to false on meta (:issue:`846`)
System Message: ERROR/3 (<stdin>, line 3622); backlink
Unknown interpreted text role "issue".
Python 3 In Progress Support
disable scrapy.telnet if twisted.conch is not available (:issue:`1161`)
System Message: ERROR/3 (<stdin>, line 3627); backlink
Unknown interpreted text role "issue".
fix Python 3 syntax errors in ajaxcrawl.py (:issue:`1162`)
System Message: ERROR/3 (<stdin>, line 3628); backlink
Unknown interpreted text role "issue".
more python3 compatibility changes for urllib (:issue:`1121`)
System Message: ERROR/3 (<stdin>, line 3629); backlink
Unknown interpreted text role "issue".
assertItemsEqual was renamed to assertCountEqual in Python 3. (:issue:`1070`)
System Message: ERROR/3 (<stdin>, line 3630); backlink
Unknown interpreted text role "issue".
Import unittest.mock if available. (:issue:`1066`)
System Message: ERROR/3 (<stdin>, line 3632); backlink
Unknown interpreted text role "issue".
updated deprecated cgi.parse_qsl to use six's parse_qsl (:issue:`909`)
System Message: ERROR/3 (<stdin>, line 3633); backlink
Unknown interpreted text role "issue".
Prevent Python 3 port regressions (:issue:`830`)
System Message: ERROR/3 (<stdin>, line 3634); backlink
Unknown interpreted text role "issue".
PY3: use MutableMapping for python 3 (:issue:`810`)
System Message: ERROR/3 (<stdin>, line 3635); backlink
Unknown interpreted text role "issue".
PY3: use six.BytesIO and six.moves.cStringIO (:issue:`803`)
System Message: ERROR/3 (<stdin>, line 3636); backlink
Unknown interpreted text role "issue".
PY3: fix xmlrpclib and email imports (:issue:`801`)
System Message: ERROR/3 (<stdin>, line 3637); backlink
Unknown interpreted text role "issue".
PY3: use six for robotparser and urlparse (:issue:`800`)
System Message: ERROR/3 (<stdin>, line 3638); backlink
Unknown interpreted text role "issue".
PY3: use six.iterkeys, six.iteritems, and tempfile (:issue:`799`)
System Message: ERROR/3 (<stdin>, line 3639); backlink
Unknown interpreted text role "issue".
PY3: fix has_key and use six.moves.configparser (:issue:`798`)
System Message: ERROR/3 (<stdin>, line 3640); backlink
Unknown interpreted text role "issue".
PY3: use six.moves.cPickle (:issue:`797`)
System Message: ERROR/3 (<stdin>, line 3641); backlink
Unknown interpreted text role "issue".
PY3 make it possible to run some tests in Python3 (:issue:`776`)
System Message: ERROR/3 (<stdin>, line 3642); backlink
Unknown interpreted text role "issue".
Tests
remove unnecessary lines from py3-ignores (:issue:`1243`)
System Message: ERROR/3 (<stdin>, line 3646); backlink
Unknown interpreted text role "issue".
Fix remaining warnings from pytest while collecting tests (:issue:`1206`)
System Message: ERROR/3 (<stdin>, line 3647); backlink
Unknown interpreted text role "issue".
Add docs build to travis (:issue:`1234`)
System Message: ERROR/3 (<stdin>, line 3648); backlink
Unknown interpreted text role "issue".
TST don't collect tests from deprecated modules. (:issue:`1165`)
System Message: ERROR/3 (<stdin>, line 3649); backlink
Unknown interpreted text role "issue".
install service_identity package in tests to prevent warnings (:issue:`1168`)
System Message: ERROR/3 (<stdin>, line 3650); backlink
Unknown interpreted text role "issue".
Fix deprecated settings API in tests (:issue:`1152`)
System Message: ERROR/3 (<stdin>, line 3652); backlink
Unknown interpreted text role "issue".
Add test for webclient with POST method and no body given (:issue:`1089`)
System Message: ERROR/3 (<stdin>, line 3653); backlink
Unknown interpreted text role "issue".
py3-ignores.txt supports comments (:issue:`1044`)
System Message: ERROR/3 (<stdin>, line 3654); backlink
Unknown interpreted text role "issue".
modernize some of the asserts (:issue:`835`)
System Message: ERROR/3 (<stdin>, line 3655); backlink
Unknown interpreted text role "issue".
selector.__repr__ test (:issue:`779`)
System Message: ERROR/3 (<stdin>, line 3656); backlink
Unknown interpreted text role "issue".
Code refactoring
CSVFeedSpider cleanup: use iterate_spider_output (:issue:`1079`)
System Message: ERROR/3 (<stdin>, line 3660); backlink
Unknown interpreted text role "issue".
remove unnecessary check from scrapy.utils.spider.iter_spider_output (:issue:`1078`)
System Message: ERROR/3 (<stdin>, line 3661); backlink
Unknown interpreted text role "issue".
Pydispatch pep8 (:issue:`992`)
System Message: ERROR/3 (<stdin>, line 3663); backlink
Unknown interpreted text role "issue".
Removed unused 'load=False' parameter from walk_modules() (:issue:`871`)
System Message: ERROR/3 (<stdin>, line 3664); backlink
Unknown interpreted text role "issue".
For consistency, use job_dir helper in SpiderState extension. (:issue:`805`)
System Message: ERROR/3 (<stdin>, line 3665); backlink
Unknown interpreted text role "issue".
rename "sflo" local variables to less cryptic "log_observer" (:issue:`775`)
System Message: ERROR/3 (<stdin>, line 3667); backlink
Unknown interpreted text role "issue".
Scrapy 0.24.6 (2015-04-20)
encode invalid xpath with unicode_escape under PY2 (:commit:`07cb3e5`)
System Message: ERROR/3 (<stdin>, line 3672); backlink
Unknown interpreted text role "commit".
fix IPython shell scope issue and load IPython user config (:commit:`2c8e573`)
System Message: ERROR/3 (<stdin>, line 3673); backlink
Unknown interpreted text role "commit".
Fix small typo in the docs (:commit:`d694019`)
System Message: ERROR/3 (<stdin>, line 3674); backlink
Unknown interpreted text role "commit".
Fix small typo (:commit:`f92fa83`)
System Message: ERROR/3 (<stdin>, line 3675); backlink
Unknown interpreted text role "commit".
Converted sel.xpath() calls to response.xpath() in Extracting the data (:commit:`c2c6d15`)
System Message: ERROR/3 (<stdin>, line 3676); backlink
Unknown interpreted text role "commit".
Scrapy 0.24.5 (2015-02-25)
Support new _getEndpoint Agent signatures on Twisted 15.0.0 (:commit:`540b9bc`)
System Message: ERROR/3 (<stdin>, line 3682); backlink
Unknown interpreted text role "commit".
DOC a couple more references are fixed (:commit:`b4c454b`)
System Message: ERROR/3 (<stdin>, line 3683); backlink
Unknown interpreted text role "commit".
DOC fix a reference (:commit:`e3c1260`)
System Message: ERROR/3 (<stdin>, line 3684); backlink
Unknown interpreted text role "commit".
t.i.b.ThreadedResolver is now a new-style class (:commit:`9e13f42`)
System Message: ERROR/3 (<stdin>, line 3685); backlink
Unknown interpreted text role "commit".
S3DownloadHandler: fix auth for requests with quoted paths/query params (:commit:`cdb9a0b`)
System Message: ERROR/3 (<stdin>, line 3686); backlink
Unknown interpreted text role "commit".
fixed the variable types in mailsender documentation (:commit:`bb3a848`)
System Message: ERROR/3 (<stdin>, line 3687); backlink
Unknown interpreted text role "commit".
Reset items_scraped instead of item_count (:commit:`edb07a4`)
System Message: ERROR/3 (<stdin>, line 3688); backlink
Unknown interpreted text role "commit".
Tentative attention message about what document to read for contributions (:commit:`7ee6f7a`)
System Message: ERROR/3 (<stdin>, line 3689); backlink
Unknown interpreted text role "commit".
mitmproxy 0.10.1 needs netlib 0.10.1 too (:commit:`874fcdd`)
System Message: ERROR/3 (<stdin>, line 3690); backlink
Unknown interpreted text role "commit".
pin mitmproxy 0.10.1 as >0.11 does not work with tests (:commit:`c6b21f0`)
System Message: ERROR/3 (<stdin>, line 3691); backlink
Unknown interpreted text role "commit".
Test the parse command locally instead of against an external url (:commit:`c3a6628`)
System Message: ERROR/3 (<stdin>, line 3692); backlink
Unknown interpreted text role "commit".
Patches Twisted issue while closing the connection pool on HTTPDownloadHandler (:commit:`d0bf957`)
System Message: ERROR/3 (<stdin>, line 3693); backlink
Unknown interpreted text role "commit".
Updates documentation on dynamic item classes. (:commit:`eeb589a`)
System Message: ERROR/3 (<stdin>, line 3694); backlink
Unknown interpreted text role "commit".
Merge pull request #943 from Lazar-T/patch-3 (:commit:`5fdab02`)
System Message: ERROR/3 (<stdin>, line 3695); backlink
Unknown interpreted text role "commit".
typo (:commit:`b0ae199`)
System Message: ERROR/3 (<stdin>, line 3696); backlink
Unknown interpreted text role "commit".
pywin32 is required by Twisted. closes #937 (:commit:`5cb0cfb`)
System Message: ERROR/3 (<stdin>, line 3697); backlink
Unknown interpreted text role "commit".
Update install.rst (:commit:`781286b`)
System Message: ERROR/3 (<stdin>, line 3698); backlink
Unknown interpreted text role "commit".
Merge pull request #928 from Lazar-T/patch-1 (:commit:`b415d04`)
System Message: ERROR/3 (<stdin>, line 3699); backlink
Unknown interpreted text role "commit".
comma instead of fullstop (:commit:`627b9ba`)
System Message: ERROR/3 (<stdin>, line 3700); backlink
Unknown interpreted text role "commit".
Merge pull request #885 from jsma/patch-1 (:commit:`de909ad`)
System Message: ERROR/3 (<stdin>, line 3701); backlink
Unknown interpreted text role "commit".
Update request-response.rst (:commit:`3f3263d`)
System Message: ERROR/3 (<stdin>, line 3702); backlink
Unknown interpreted text role "commit".
SgmlLinkExtractor - fix for parsing <area> tag with Unicode present (:commit:`49b40f0`)
System Message: ERROR/3 (<stdin>, line 3703); backlink
Unknown interpreted text role "commit".
Scrapy 0.24.4 (2014-08-09)
pem file is used by mockserver and required by scrapy bench (:commit:`5eddc68`)
System Message: ERROR/3 (<stdin>, line 3708); backlink
Unknown interpreted text role "commit".
scrapy bench needs scrapy.tests* (:commit:`d6cb999`)
System Message: ERROR/3 (<stdin>, line 3709); backlink
Unknown interpreted text role "commit".
Scrapy 0.24.3 (2014-08-09)
no need to waste travis-ci time on py3 for 0.24 (:commit:`8e080c1`)
System Message: ERROR/3 (<stdin>, line 3714); backlink
Unknown interpreted text role "commit".
Update installation docs (:commit:`1d0c096`)
System Message: ERROR/3 (<stdin>, line 3715); backlink
Unknown interpreted text role "commit".
There is a trove classifier for Scrapy framework! (:commit:`4c701d7`)
System Message: ERROR/3 (<stdin>, line 3716); backlink
Unknown interpreted text role "commit".
update other places where w3lib version is mentioned (:commit:`d109c13`)
System Message: ERROR/3 (<stdin>, line 3717); backlink
Unknown interpreted text role "commit".
Update w3lib requirement to 1.8.0 (:commit:`39d2ce5`)
System Message: ERROR/3 (<stdin>, line 3718); backlink
Unknown interpreted text role "commit".
Use w3lib.html.replace_entities() (remove_entities() is deprecated) (:commit:`180d3ad`)
System Message: ERROR/3 (<stdin>, line 3719); backlink
Unknown interpreted text role "commit".
set zip_safe=False (:commit:`a51ee8b`)
System Message: ERROR/3 (<stdin>, line 3720); backlink
Unknown interpreted text role "commit".
do not ship tests package (:commit:`ee3b371`)
System Message: ERROR/3 (<stdin>, line 3721); backlink
Unknown interpreted text role "commit".
scrapy.bat is not needed anymore (:commit:`c3861cf`)
System Message: ERROR/3 (<stdin>, line 3722); backlink
Unknown interpreted text role "commit".
Modernize setup.py (:commit:`362e322`)
System Message: ERROR/3 (<stdin>, line 3723); backlink
Unknown interpreted text role "commit".
headers can not handle non-string values (:commit:`94a5c65`)
System Message: ERROR/3 (<stdin>, line 3724); backlink
Unknown interpreted text role "commit".
fix ftp test cases (:commit:`a274a7f`)
System Message: ERROR/3 (<stdin>, line 3725); backlink
Unknown interpreted text role "commit".
The sum up of travis-ci builds are taking like 50min to complete (:commit:`ae1e2cc`)
System Message: ERROR/3 (<stdin>, line 3726); backlink
Unknown interpreted text role "commit".
Update shell.rst typo (:commit:`e49c96a`)
System Message: ERROR/3 (<stdin>, line 3727); backlink
Unknown interpreted text role "commit".
removes weird indentation in the shell results (:commit:`1ca489d`)
System Message: ERROR/3 (<stdin>, line 3728); backlink
Unknown interpreted text role "commit".
improved explanations, clarified blog post as source, added link for XPath string functions in the spec (:commit:`65c8f05`)
System Message: ERROR/3 (<stdin>, line 3729); backlink
Unknown interpreted text role "commit".
renamed UserTimeoutError and ServerTimeouterror #583 (:commit:`037f6ab`)
System Message: ERROR/3 (<stdin>, line 3730); backlink
Unknown interpreted text role "commit".
adding some xpath tips to selectors docs (:commit:`2d103e0`)
System Message: ERROR/3 (<stdin>, line 3731); backlink
Unknown interpreted text role "commit".
fix tests to account for https://github.com/scrapy/w3lib/pull/23 (:commit:`f8d366a`)
System Message: ERROR/3 (<stdin>, line 3732); backlink
Unknown interpreted text role "commit".
get_func_args maximum recursion fix #728 (:commit:`81344ea`)
System Message: ERROR/3 (<stdin>, line 3733); backlink
Unknown interpreted text role "commit".
Updated input/ouput processor example according to #560. (:commit:`f7c4ea8`)
System Message: ERROR/3 (<stdin>, line 3734); backlink
Unknown interpreted text role "commit".
Fixed Python syntax in tutorial. (:commit:`db59ed9`)
System Message: ERROR/3 (<stdin>, line 3735); backlink
Unknown interpreted text role "commit".
Add test case for tunneling proxy (:commit:`f090260`)
System Message: ERROR/3 (<stdin>, line 3736); backlink
Unknown interpreted text role "commit".
Bugfix for leaking Proxy-Authorization header to remote host when using tunneling (:commit:`d8793af`)
System Message: ERROR/3 (<stdin>, line 3737); backlink
Unknown interpreted text role "commit".
Extract links from XHTML documents with MIME-Type "application/xml" (:commit:`ed1f376`)
System Message: ERROR/3 (<stdin>, line 3738); backlink
Unknown interpreted text role "commit".
Merge pull request #793 from roysc/patch-1 (:commit:`91a1106`)
System Message: ERROR/3 (<stdin>, line 3739); backlink
Unknown interpreted text role "commit".
Fix typo in commands.rst (:commit:`743e1e2`)
System Message: ERROR/3 (<stdin>, line 3740); backlink
Unknown interpreted text role "commit".
better testcase for settings.overrides.setdefault (:commit:`e22daaf`)
System Message: ERROR/3 (<stdin>, line 3741); backlink
Unknown interpreted text role "commit".
Using CRLF as line marker according to http 1.1 definition (:commit:`5ec430b`)
System Message: ERROR/3 (<stdin>, line 3742); backlink
Unknown interpreted text role "commit".
Scrapy 0.24.2 (2014-07-08)
Use a mutable mapping to proxy deprecated settings.overrides and settings.defaults attribute (:commit:`e5e8133`)
System Message: ERROR/3 (<stdin>, line 3747); backlink
Unknown interpreted text role "commit".
there is not support for python3 yet (:commit:`3cd6146`)
System Message: ERROR/3 (<stdin>, line 3748); backlink
Unknown interpreted text role "commit".
Update python compatible version set to Debian packages (:commit:`fa5d76b`)
System Message: ERROR/3 (<stdin>, line 3749); backlink
Unknown interpreted text role "commit".
DOC fix formatting in release notes (:commit:`c6a9e20`)
System Message: ERROR/3 (<stdin>, line 3750); backlink
Unknown interpreted text role "commit".
Scrapy 0.24.1 (2014-06-27)
Fix deprecated CrawlerSettings and increase backward compatibility with .defaults attribute (:commit:`8e3f20a`)
System Message: ERROR/3 (<stdin>, line 3755); backlink
Unknown interpreted text role "commit".
Scrapy 0.24.0 (2014-06-26)
Enhancements
Improve Scrapy top-level namespace (:issue:`494`, :issue:`684`)
System Message: ERROR/3 (<stdin>, line 3765); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3765); backlink
Unknown interpreted text role "issue".
Add selector shortcuts to responses (:issue:`554`, :issue:`690`)
System Message: ERROR/3 (<stdin>, line 3766); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3766); backlink
Unknown interpreted text role "issue".
Add new lxml based LinkExtractor to replace unmaintained SgmlLinkExtractor (:issue:`559`, :issue:`761`, :issue:`763`)
System Message: ERROR/3 (<stdin>, line 3767); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3767); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3767); backlink
Unknown interpreted text role "issue".
Cleanup settings API - part of per-spider settings GSoC project (:issue:`737`)
System Message: ERROR/3 (<stdin>, line 3769); backlink
Unknown interpreted text role "issue".
Add UTF8 encoding header to templates (:issue:`688`, :issue:`762`)
System Message: ERROR/3 (<stdin>, line 3770); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3770); backlink
Unknown interpreted text role "issue".
Telnet console now binds to 127.0.0.1 by default (:issue:`699`)
System Message: ERROR/3 (<stdin>, line 3771); backlink
Unknown interpreted text role "issue".
Update Debian/Ubuntu install instructions (:issue:`509`, :issue:`549`)
System Message: ERROR/3 (<stdin>, line 3772); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3772); backlink
Unknown interpreted text role "issue".
Disable smart strings in lxml XPath evaluations (:issue:`535`)
System Message: ERROR/3 (<stdin>, line 3773); backlink
Unknown interpreted text role "issue".
Restore filesystem based cache as default for http cache middleware (:issue:`541`, :issue:`500`, :issue:`571`)
System Message: ERROR/3 (<stdin>, line 3774); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3774); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3774); backlink
Unknown interpreted text role "issue".
Expose current crawler in Scrapy shell (:issue:`557`)
System Message: ERROR/3 (<stdin>, line 3776); backlink
Unknown interpreted text role "issue".
Improve testsuite comparing CSV and XML exporters (:issue:`570`)
System Message: ERROR/3 (<stdin>, line 3777); backlink
Unknown interpreted text role "issue".
New offsite/filtered and offsite/domains stats (:issue:`566`)
System Message: ERROR/3 (<stdin>, line 3778); backlink
Unknown interpreted text role "issue".
Support process_links as generator in CrawlSpider (:issue:`555`)
System Message: ERROR/3 (<stdin>, line 3779); backlink
Unknown interpreted text role "issue".
Verbose logging and new stats counters for DupeFilter (:issue:`553`)
System Message: ERROR/3 (<stdin>, line 3780); backlink
Unknown interpreted text role "issue".
Add a mimetype parameter to MailSender.send() (:issue:`602`)
System Message: ERROR/3 (<stdin>, line 3781); backlink
Unknown interpreted text role "issue".
Generalize file pipeline log messages (:issue:`622`)
System Message: ERROR/3 (<stdin>, line 3782); backlink
Unknown interpreted text role "issue".
Replace unencodeable codepoints with html entities in SGMLLinkExtractor (:issue:`565`)
System Message: ERROR/3 (<stdin>, line 3783); backlink
Unknown interpreted text role "issue".
Converted SEP documents to rst format (:issue:`629`, :issue:`630`, :issue:`638`, :issue:`632`, :issue:`636`, :issue:`640`, :issue:`635`, :issue:`634`, :issue:`639`, :issue:`637`, :issue:`631`, :issue:`633`, :issue:`641`, :issue:`642`)
System Message: ERROR/3 (<stdin>, line 3784); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3784); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3784); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3784); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3784); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3784); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3784); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3784); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3784); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3784); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3784); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3784); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3784); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3784); backlink
Unknown interpreted text role "issue".
Tests and docs for clickdata's nr index in FormRequest (:issue:`646`, :issue:`645`)
System Message: ERROR/3 (<stdin>, line 3788); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3788); backlink
Unknown interpreted text role "issue".
Allow to disable a downloader handler just like any other component (:issue:`650`)
System Message: ERROR/3 (<stdin>, line 3789); backlink
Unknown interpreted text role "issue".
Log when a request is discarded after too many redirections (:issue:`654`)
System Message: ERROR/3 (<stdin>, line 3790); backlink
Unknown interpreted text role "issue".
Log error responses if they are not handled by spider callbacks (:issue:`612`, :issue:`656`)
System Message: ERROR/3 (<stdin>, line 3791); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3791); backlink
Unknown interpreted text role "issue".
Add content-type check to http compression mw (:issue:`193`, :issue:`660`)
System Message: ERROR/3 (<stdin>, line 3793); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3793); backlink
Unknown interpreted text role "issue".
Run pypy tests using latest pypi from ppa (:issue:`674`)
System Message: ERROR/3 (<stdin>, line 3794); backlink
Unknown interpreted text role "issue".
Run test suite using pytest instead of trial (:issue:`679`)
System Message: ERROR/3 (<stdin>, line 3795); backlink
Unknown interpreted text role "issue".
Build docs and check for dead links in tox environment (:issue:`687`)
System Message: ERROR/3 (<stdin>, line 3796); backlink
Unknown interpreted text role "issue".
Make scrapy.version_info a tuple of integers (:issue:`681`, :issue:`692`)
System Message: ERROR/3 (<stdin>, line 3797); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3797); backlink
Unknown interpreted text role "issue".
Infer exporter's output format from filename extensions (:issue:`546`, :issue:`659`, :issue:`760`)
System Message: ERROR/3 (<stdin>, line 3798); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3798); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3798); backlink
Unknown interpreted text role "issue".
Support case-insensitive domains in url_is_from_any_domain() (:issue:`693`)
System Message: ERROR/3 (<stdin>, line 3800); backlink
Unknown interpreted text role "issue".
Remove pep8 warnings in project and spider templates (:issue:`698`)
System Message: ERROR/3 (<stdin>, line 3801); backlink
Unknown interpreted text role "issue".
Tests and docs for request_fingerprint function (:issue:`597`)
System Message: ERROR/3 (<stdin>, line 3802); backlink
Unknown interpreted text role "issue".
Update SEP-19 for GSoC project per-spider settings (:issue:`705`)
System Message: ERROR/3 (<stdin>, line 3803); backlink
Unknown interpreted text role "issue".
Set exit code to non-zero when contracts fails (:issue:`727`)
System Message: ERROR/3 (<stdin>, line 3804); backlink
Unknown interpreted text role "issue".
Add a setting to control what class is instantiated as Downloader component (:issue:`738`)
System Message: ERROR/3 (<stdin>, line 3805); backlink
Unknown interpreted text role "issue".
Pass response in item_dropped signal (:issue:`724`)
System Message: ERROR/3 (<stdin>, line 3807); backlink
Unknown interpreted text role "issue".
Improve scrapy check contracts command (:issue:`733`, :issue:`752`)
System Message: ERROR/3 (<stdin>, line 3808); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3808); backlink
Unknown interpreted text role "issue".
Document spider.closed() shortcut (:issue:`719`)
System Message: ERROR/3 (<stdin>, line 3809); backlink
Unknown interpreted text role "issue".
Document request_scheduled signal (:issue:`746`)
System Message: ERROR/3 (<stdin>, line 3810); backlink
Unknown interpreted text role "issue".
Add a note about reporting security issues (:issue:`697`)
System Message: ERROR/3 (<stdin>, line 3811); backlink
Unknown interpreted text role "issue".
Add LevelDB http cache storage backend (:issue:`626`, :issue:`500`)
System Message: ERROR/3 (<stdin>, line 3812); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3812); backlink
Unknown interpreted text role "issue".
Sort spider list output of scrapy list command (:issue:`742`)
System Message: ERROR/3 (<stdin>, line 3813); backlink
Unknown interpreted text role "issue".
Multiple documentation enhancements and fixes (:issue:`575`, :issue:`587`, :issue:`590`, :issue:`596`, :issue:`610`, :issue:`617`, :issue:`618`, :issue:`627`, :issue:`613`, :issue:`643`, :issue:`654`, :issue:`675`, :issue:`663`, :issue:`711`, :issue:`714`)
System Message: ERROR/3 (<stdin>, line 3814); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3814); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3814); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3814); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3814); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3814); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3814); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3814); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3814); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3814); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3814); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3814); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3814); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3814); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3814); backlink
Unknown interpreted text role "issue".
Bugfixes
Encode unicode URL value when creating Links in RegexLinkExtractor (:issue:`561`)
System Message: ERROR/3 (<stdin>, line 3822); backlink
Unknown interpreted text role "issue".
Ignore None values in ItemLoader processors (:issue:`556`)
System Message: ERROR/3 (<stdin>, line 3823); backlink
Unknown interpreted text role "issue".
Fix link text when there is an inner tag in SGMLLinkExtractor and HtmlParserLinkExtractor (:issue:`485`, :issue:`574`)
System Message: ERROR/3 (<stdin>, line 3824); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3824); backlink
Unknown interpreted text role "issue".
Fix wrong checks on subclassing of deprecated classes (:issue:`581`, :issue:`584`)
System Message: ERROR/3 (<stdin>, line 3826); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3826); backlink
Unknown interpreted text role "issue".
Handle errors caused by inspect.stack() failures (:issue:`582`)
System Message: ERROR/3 (<stdin>, line 3828); backlink
Unknown interpreted text role "issue".
Fix a reference to unexistent engine attribute (:issue:`593`, :issue:`594`)
System Message: ERROR/3 (<stdin>, line 3829); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3829); backlink
Unknown interpreted text role "issue".
Fix dynamic itemclass example usage of type() (:issue:`603`)
System Message: ERROR/3 (<stdin>, line 3830); backlink
Unknown interpreted text role "issue".
Use lucasdemarchi/codespell to fix typos (:issue:`628`)
System Message: ERROR/3 (<stdin>, line 3831); backlink
Unknown interpreted text role "issue".
Fix default value of attrs argument in SgmlLinkExtractor to be tuple (:issue:`661`)
System Message: ERROR/3 (<stdin>, line 3832); backlink
Unknown interpreted text role "issue".
Fix XXE flaw in sitemap reader (:issue:`676`)
System Message: ERROR/3 (<stdin>, line 3833); backlink
Unknown interpreted text role "issue".
Fix engine to support filtered start requests (:issue:`707`)
System Message: ERROR/3 (<stdin>, line 3834); backlink
Unknown interpreted text role "issue".
Fix offsite middleware case on urls with no hostnames (:issue:`745`)
System Message: ERROR/3 (<stdin>, line 3835); backlink
Unknown interpreted text role "issue".
Testsuite doesn't require PIL anymore (:issue:`585`)
System Message: ERROR/3 (<stdin>, line 3836); backlink
Unknown interpreted text role "issue".
Scrapy 0.22.2 (released 2014-02-14)
fix a reference to unexistent engine.slots. closes #593 (:commit:`13c099a`)
System Message: ERROR/3 (<stdin>, line 3842); backlink
Unknown interpreted text role "commit".
downloaderMW doc typo (spiderMW doc copy remnant) (:commit:`8ae11bf`)
System Message: ERROR/3 (<stdin>, line 3843); backlink
Unknown interpreted text role "commit".
Correct typos (:commit:`1346037`)
System Message: ERROR/3 (<stdin>, line 3844); backlink
Unknown interpreted text role "commit".
Scrapy 0.22.1 (released 2014-02-08)
localhost666 can resolve under certain circumstances (:commit:`2ec2279`)
System Message: ERROR/3 (<stdin>, line 3849); backlink
Unknown interpreted text role "commit".
test inspect.stack failure (:commit:`cc3eda3`)
System Message: ERROR/3 (<stdin>, line 3850); backlink
Unknown interpreted text role "commit".
Handle cases when inspect.stack() fails (:commit:`8cb44f9`)
System Message: ERROR/3 (<stdin>, line 3851); backlink
Unknown interpreted text role "commit".
Fix wrong checks on subclassing of deprecated classes. closes #581 (:commit:`46d98d6`)
System Message: ERROR/3 (<stdin>, line 3852); backlink
Unknown interpreted text role "commit".
Docs: 4-space indent for final spider example (:commit:`13846de`)
System Message: ERROR/3 (<stdin>, line 3853); backlink
Unknown interpreted text role "commit".
Fix HtmlParserLinkExtractor and tests after #485 merge (:commit:`368a946`)
System Message: ERROR/3 (<stdin>, line 3854); backlink
Unknown interpreted text role "commit".
BaseSgmlLinkExtractor: Fixed the missing space when the link has an inner tag (:commit:`b566388`)
System Message: ERROR/3 (<stdin>, line 3855); backlink
Unknown interpreted text role "commit".
BaseSgmlLinkExtractor: Added unit test of a link with an inner tag (:commit:`c1cb418`)
System Message: ERROR/3 (<stdin>, line 3856); backlink
Unknown interpreted text role "commit".
BaseSgmlLinkExtractor: Fixed unknown_endtag() so that it only set current_link=None when the end tag match the opening tag (:commit:`7e4d627`)
System Message: ERROR/3 (<stdin>, line 3857); backlink
Unknown interpreted text role "commit".
Fix tests for Travis-CI build (:commit:`76c7e20`)
System Message: ERROR/3 (<stdin>, line 3858); backlink
Unknown interpreted text role "commit".
replace unencodable codepoints with html entities. fixes #562 and #285 (:commit:`5f87b17`)
System Message: ERROR/3 (<stdin>, line 3859); backlink
Unknown interpreted text role "commit".
RegexLinkExtractor: encode URL unicode value when creating Links (:commit:`d0ee545`)
System Message: ERROR/3 (<stdin>, line 3860); backlink
Unknown interpreted text role "commit".
Updated the tutorial crawl output with latest output. (:commit:`8da65de`)
System Message: ERROR/3 (<stdin>, line 3861); backlink
Unknown interpreted text role "commit".
Updated shell docs with the crawler reference and fixed the actual shell output. (:commit:`875b9ab`)
System Message: ERROR/3 (<stdin>, line 3862); backlink
Unknown interpreted text role "commit".
PEP8 minor edits. (:commit:`f89efaf`)
System Message: ERROR/3 (<stdin>, line 3863); backlink
Unknown interpreted text role "commit".
Expose current crawler in the Scrapy shell. (:commit:`5349cec`)
System Message: ERROR/3 (<stdin>, line 3864); backlink
Unknown interpreted text role "commit".
Unused re import and PEP8 minor edits. (:commit:`387f414`)
System Message: ERROR/3 (<stdin>, line 3865); backlink
Unknown interpreted text role "commit".
Ignore None's values when using the ItemLoader. (:commit:`0632546`)
System Message: ERROR/3 (<stdin>, line 3866); backlink
Unknown interpreted text role "commit".
DOC Fixed HTTPCACHE_STORAGE typo in the default value which is now Filesystem instead Dbm. (:commit:`cde9a8c`)
System Message: ERROR/3 (<stdin>, line 3867); backlink
Unknown interpreted text role "commit".
show Ubuntu setup instructions as literal code (:commit:`fb5c9c5`)
System Message: ERROR/3 (<stdin>, line 3868); backlink
Unknown interpreted text role "commit".
Update Ubuntu installation instructions (:commit:`70fb105`)
System Message: ERROR/3 (<stdin>, line 3869); backlink
Unknown interpreted text role "commit".
Merge pull request #550 from stray-leone/patch-1 (:commit:`6f70b6a`)
System Message: ERROR/3 (<stdin>, line 3870); backlink
Unknown interpreted text role "commit".
modify the version of Scrapy Ubuntu package (:commit:`725900d`)
System Message: ERROR/3 (<stdin>, line 3871); backlink
Unknown interpreted text role "commit".
fix 0.22.0 release date (:commit:`af0219a`)
System Message: ERROR/3 (<stdin>, line 3872); backlink
Unknown interpreted text role "commit".
fix typos in news.rst and remove (not released yet) header (:commit:`b7f58f4`)
System Message: ERROR/3 (<stdin>, line 3873); backlink
Unknown interpreted text role "commit".
Scrapy 0.22.0 (released 2014-01-17)
Enhancements
[Backward incompatible] Switched HTTPCacheMiddleware backend to filesystem (:issue:`541`) To restore old backend set HTTPCACHE_STORAGE to scrapy.contrib.httpcache.DbmCacheStorage
System Message: ERROR/3 (<stdin>, line 3881); backlink
Unknown interpreted text role "issue".
Proxy https:// urls using CONNECT method (:issue:`392`, :issue:`397`)
System Message: ERROR/3 (<stdin>, line 3883); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3883); backlink
Unknown interpreted text role "issue".
Add a middleware to crawl ajax crawleable pages as defined by google (:issue:`343`)
System Message: ERROR/3 (<stdin>, line 3884); backlink
Unknown interpreted text role "issue".
Rename scrapy.spider.BaseSpider to scrapy.spider.Spider (:issue:`510`, :issue:`519`)
System Message: ERROR/3 (<stdin>, line 3885); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3885); backlink
Unknown interpreted text role "issue".
Selectors register EXSLT namespaces by default (:issue:`472`)
System Message: ERROR/3 (<stdin>, line 3886); backlink
Unknown interpreted text role "issue".
Unify item loaders similar to selectors renaming (:issue:`461`)
System Message: ERROR/3 (<stdin>, line 3887); backlink
Unknown interpreted text role "issue".
Make RFPDupeFilter class easily subclassable (:issue:`533`)
System Message: ERROR/3 (<stdin>, line 3888); backlink
Unknown interpreted text role "issue".
Improve test coverage and forthcoming Python 3 support (:issue:`525`)
System Message: ERROR/3 (<stdin>, line 3889); backlink
Unknown interpreted text role "issue".
Promote startup info on settings and middleware to INFO level (:issue:`520`)
System Message: ERROR/3 (<stdin>, line 3890); backlink
Unknown interpreted text role "issue".
Support partials in get_func_args util (:issue:`506`, issue:504)
System Message: ERROR/3 (<stdin>, line 3891); backlink
Unknown interpreted text role "issue".
Allow running individual tests via tox (:issue:`503`)
System Message: ERROR/3 (<stdin>, line 3892); backlink
Unknown interpreted text role "issue".
Update extensions ignored by link extractors (:issue:`498`)
System Message: ERROR/3 (<stdin>, line 3893); backlink
Unknown interpreted text role "issue".
Add middleware methods to get files/images/thumbs paths (:issue:`490`)
System Message: ERROR/3 (<stdin>, line 3894); backlink
Unknown interpreted text role "issue".
Improve offsite middleware tests (:issue:`478`)
System Message: ERROR/3 (<stdin>, line 3895); backlink
Unknown interpreted text role "issue".
Add a way to skip default Referer header set by RefererMiddleware (:issue:`475`)
System Message: ERROR/3 (<stdin>, line 3896); backlink
Unknown interpreted text role "issue".
Do not send x-gzip in default Accept-Encoding header (:issue:`469`)
System Message: ERROR/3 (<stdin>, line 3897); backlink
Unknown interpreted text role "issue".
Support defining http error handling using settings (:issue:`466`)
System Message: ERROR/3 (<stdin>, line 3898); backlink
Unknown interpreted text role "issue".
Use modern python idioms wherever you find legacies (:issue:`497`)
System Message: ERROR/3 (<stdin>, line 3899); backlink
Unknown interpreted text role "issue".
Improve and correct documentation (:issue:`527`, :issue:`524`, :issue:`521`, :issue:`517`, :issue:`512`, :issue:`505`, :issue:`502`, :issue:`489`, :issue:`465`, :issue:`460`, :issue:`425`, :issue:`536`)
System Message: ERROR/3 (<stdin>, line 3900); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3900); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3900); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3900); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3900); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3900); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3900); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3900); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3900); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3900); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3900); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3900); backlink
Unknown interpreted text role "issue".
Fixes
Update Selector class imports in CrawlSpider template (:issue:`484`)
System Message: ERROR/3 (<stdin>, line 3907); backlink
Unknown interpreted text role "issue".
Fix unexistent reference to engine.slots (:issue:`464`)
System Message: ERROR/3 (<stdin>, line 3908); backlink
Unknown interpreted text role "issue".
Do not try to call body_as_unicode() on a non-TextResponse instance (:issue:`462`)
System Message: ERROR/3 (<stdin>, line 3909); backlink
Unknown interpreted text role "issue".
Warn when subclassing XPathItemLoader, previously it only warned on instantiation. (:issue:`523`)
System Message: ERROR/3 (<stdin>, line 3910); backlink
Unknown interpreted text role "issue".
Warn when subclassing XPathSelector, previously it only warned on instantiation. (:issue:`537`)
System Message: ERROR/3 (<stdin>, line 3912); backlink
Unknown interpreted text role "issue".
Multiple fixes to memory stats (:issue:`531`, :issue:`530`, :issue:`529`)
System Message: ERROR/3 (<stdin>, line 3914); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3914); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3914); backlink
Unknown interpreted text role "issue".
Fix overriding url in FormRequest.from_response() (:issue:`507`)
System Message: ERROR/3 (<stdin>, line 3915); backlink
Unknown interpreted text role "issue".
Fix tests runner under pip 1.5 (:issue:`513`)
System Message: ERROR/3 (<stdin>, line 3916); backlink
Unknown interpreted text role "issue".
Fix logging error when spider name is unicode (:issue:`479`)
System Message: ERROR/3 (<stdin>, line 3917); backlink
Unknown interpreted text role "issue".
Scrapy 0.20.2 (released 2013-12-09)
Update CrawlSpider Template with Selector changes (:commit:`6d1457d`)
System Message: ERROR/3 (<stdin>, line 3922); backlink
Unknown interpreted text role "commit".
fix method name in tutorial. closes GH-480 (:commit:`b4fc359`
System Message: ERROR/3 (<stdin>, line 3923); backlink
Unknown interpreted text role "commit".
Scrapy 0.20.1 (released 2013-11-28)
include_package_data is required to build wheels from published sources (:commit:`5ba1ad5`)
System Message: ERROR/3 (<stdin>, line 3928); backlink
Unknown interpreted text role "commit".
process_parallel was leaking the failures on its internal deferreds. closes #458 (:commit:`419a780`)
System Message: ERROR/3 (<stdin>, line 3929); backlink
Unknown interpreted text role "commit".
Scrapy 0.20.0 (released 2013-11-08)
Enhancements
New Selector's API including CSS selectors (:issue:`395` and :issue:`426`),
System Message: ERROR/3 (<stdin>, line 3937); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3937); backlink
Unknown interpreted text role "issue".
Request/Response url/body attributes are now immutable (modifying them had been deprecated for a long time)
:setting:`ITEM_PIPELINES` is now defined as a dict (instead of a list)
System Message: ERROR/3 (<stdin>, line 3940); backlink
Unknown interpreted text role "setting".
Sitemap spider can fetch alternate URLs (:issue:`360`)
System Message: ERROR/3 (<stdin>, line 3941); backlink
Unknown interpreted text role "issue".
Selector.remove_namespaces() now remove namespaces from element's attributes. (:issue:`416`)
System Message: ERROR/3 (<stdin>, line 3942); backlink
Unknown interpreted text role "issue".
Paved the road for Python 3.3+ (:issue:`435`, :issue:`436`, :issue:`431`, :issue:`452`)
System Message: ERROR/3 (<stdin>, line 3943); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3943); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3943); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3943); backlink
Unknown interpreted text role "issue".
New item exporter using native python types with nesting support (:issue:`366`)
System Message: ERROR/3 (<stdin>, line 3944); backlink
Unknown interpreted text role "issue".
Tune HTTP1.1 pool size so it matches concurrency defined by settings (:commit:`b43b5f575`)
System Message: ERROR/3 (<stdin>, line 3945); backlink
Unknown interpreted text role "commit".
scrapy.mail.MailSender now can connect over TLS or upgrade using STARTTLS (:issue:`327`)
System Message: ERROR/3 (<stdin>, line 3946); backlink
Unknown interpreted text role "issue".
New FilesPipeline with functionality factored out from ImagesPipeline (:issue:`370`, :issue:`409`)
System Message: ERROR/3 (<stdin>, line 3947); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3947); backlink
Unknown interpreted text role "issue".
Recommend Pillow instead of PIL for image handling (:issue:`317`)
System Message: ERROR/3 (<stdin>, line 3948); backlink
Unknown interpreted text role "issue".
Added Debian packages for Ubuntu Quantal and Raring (:commit:`86230c0`)
System Message: ERROR/3 (<stdin>, line 3949); backlink
Unknown interpreted text role "commit".
Mock server (used for tests) can listen for HTTPS requests (:issue:`410`)
System Message: ERROR/3 (<stdin>, line 3950); backlink
Unknown interpreted text role "issue".
Remove multi spider support from multiple core components (:issue:`422`, :issue:`421`, :issue:`420`, :issue:`419`, :issue:`423`, :issue:`418`)
System Message: ERROR/3 (<stdin>, line 3951); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3951); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3951); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3951); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3951); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3951); backlink
Unknown interpreted text role "issue".
Travis-CI now tests Scrapy changes against development versions of w3lib and queuelib python packages.
Add pypy 2.1 to continuous integration tests (:commit:`ecfa7431`)
System Message: ERROR/3 (<stdin>, line 3954); backlink
Unknown interpreted text role "commit".
Pylinted, pep8 and removed old-style exceptions from source (:issue:`430`, :issue:`432`)
System Message: ERROR/3 (<stdin>, line 3955); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3955); backlink
Unknown interpreted text role "issue".
Use importlib for parametric imports (:issue:`445`)
System Message: ERROR/3 (<stdin>, line 3956); backlink
Unknown interpreted text role "issue".
Handle a regression introduced in Python 2.7.5 that affects XmlItemExporter (:issue:`372`)
System Message: ERROR/3 (<stdin>, line 3957); backlink
Unknown interpreted text role "issue".
Bugfix crawling shutdown on SIGINT (:issue:`450`)
System Message: ERROR/3 (<stdin>, line 3958); backlink
Unknown interpreted text role "issue".
Do not submit reset type inputs in FormRequest.from_response (:commit:`b326b87`)
System Message: ERROR/3 (<stdin>, line 3959); backlink
Unknown interpreted text role "commit".
Do not silence download errors when request errback raises an exception (:commit:`684cfc0`)
System Message: ERROR/3 (<stdin>, line 3960); backlink
Unknown interpreted text role "commit".
Bugfixes
Fix tests under Django 1.6 (:commit:`b6bed44c`)
System Message: ERROR/3 (<stdin>, line 3965); backlink
Unknown interpreted text role "commit".
Lot of bugfixes to retry middleware under disconnections using HTTP 1.1 download handler
Fix inconsistencies among Twisted releases (:issue:`406`)
System Message: ERROR/3 (<stdin>, line 3967); backlink
Unknown interpreted text role "issue".
Fix Scrapy shell bugs (:issue:`418`, :issue:`407`)
System Message: ERROR/3 (<stdin>, line 3968); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3968); backlink
Unknown interpreted text role "issue".
Fix invalid variable name in setup.py (:issue:`429`)
System Message: ERROR/3 (<stdin>, line 3969); backlink
Unknown interpreted text role "issue".
Fix tutorial references (:issue:`387`)
System Message: ERROR/3 (<stdin>, line 3970); backlink
Unknown interpreted text role "issue".
Improve request-response docs (:issue:`391`)
System Message: ERROR/3 (<stdin>, line 3971); backlink
Unknown interpreted text role "issue".
Improve best practices docs (:issue:`399`, :issue:`400`, :issue:`401`, :issue:`402`)
System Message: ERROR/3 (<stdin>, line 3972); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3972); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3972); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 3972); backlink
Unknown interpreted text role "issue".
Improve django integration docs (:issue:`404`)
System Message: ERROR/3 (<stdin>, line 3973); backlink
Unknown interpreted text role "issue".
Document bindaddress request meta (:commit:`37c24e01d7`)
System Message: ERROR/3 (<stdin>, line 3974); backlink
Unknown interpreted text role "commit".
Improve Request class documentation (:issue:`226`)
System Message: ERROR/3 (<stdin>, line 3975); backlink
Unknown interpreted text role "issue".
Other
Dropped Python 2.6 support (:issue:`448`)
System Message: ERROR/3 (<stdin>, line 3980); backlink
Unknown interpreted text role "issue".
Add :doc:`cssselect <cssselect:index>` python package as install dependency
System Message: ERROR/3 (<stdin>, line 3981); backlink
Unknown interpreted text role "doc".
Drop libxml2 and multi selector's backend support, lxml is required from now on.
Minimum Twisted version increased to 10.0.0, dropped Twisted 8.0 support.
Running test suite now requires mock python library (:issue:`390`)
System Message: ERROR/3 (<stdin>, line 3984); backlink
Unknown interpreted text role "issue".
Thanks
Thanks to everyone who contribute to this release!
List of contributors sorted by number of commits:
69 Daniel Graña <dangra@...> 37 Pablo Hoffman <pablo@...> 13 Mikhail Korobov <kmike84@...> 9 Alex Cepoi <alex.cepoi@...> 9 alexanderlukanin13 <alexander.lukanin.13@...> 8 Rolando Espinoza La fuente <darkrho@...> 8 Lukasz Biedrycki <lukasz.biedrycki@...> 6 Nicolas Ramirez <nramirez.uy@...> 3 Paul Tremberth <paul.tremberth@...> 2 Martin Olveyra <molveyra@...> 2 Stefan <misc@...> 2 Rolando Espinoza <darkrho@...> 2 Loren Davie <loren@...> 2 irgmedeiros <irgmedeiros@...> 1 Stefan Koch <taikano@...> 1 Stefan <cct@...> 1 scraperdragon <dragon@...> 1 Kumara Tharmalingam <ktharmal@...> 1 Francesco Piccinno <stack.box@...> 1 Marcos Campal <duendex@...> 1 Dragon Dave <dragon@...> 1 Capi Etheriel <barraponto@...> 1 cacovsky <amarquesferraz@...> 1 Berend Iwema <berend@...>
Scrapy 0.18.4 (released 2013-10-10)
IPython refuses to update the namespace. fix #396 (:commit:`3d32c4f`)
System Message: ERROR/3 (<stdin>, line 4022); backlink
Unknown interpreted text role "commit".
Fix AlreadyCalledError replacing a request in shell command. closes #407 (:commit:`b1d8919`)
System Message: ERROR/3 (<stdin>, line 4023); backlink
Unknown interpreted text role "commit".
Fix start_requests laziness and early hangs (:commit:`89faf52`)
System Message: ERROR/3 (<stdin>, line 4024); backlink
Unknown interpreted text role "commit".
Scrapy 0.18.3 (released 2013-10-03)
fix regression on lazy evaluation of start requests (:commit:`12693a5`)
System Message: ERROR/3 (<stdin>, line 4029); backlink
Unknown interpreted text role "commit".
forms: do not submit reset inputs (:commit:`e429f63`)
System Message: ERROR/3 (<stdin>, line 4030); backlink
Unknown interpreted text role "commit".
increase unittest timeouts to decrease travis false positive failures (:commit:`912202e`)
System Message: ERROR/3 (<stdin>, line 4031); backlink
Unknown interpreted text role "commit".
backport master fixes to json exporter (:commit:`cfc2d46`)
System Message: ERROR/3 (<stdin>, line 4032); backlink
Unknown interpreted text role "commit".
Fix permission and set umask before generating sdist tarball (:commit:`06149e0`)
System Message: ERROR/3 (<stdin>, line 4033); backlink
Unknown interpreted text role "commit".
Scrapy 0.18.2 (released 2013-09-03)
Backport scrapy check command fixes and backward compatible multi crawler process(:issue:`339`)
System Message: ERROR/3 (<stdin>, line 4038); backlink
Unknown interpreted text role "issue".
Scrapy 0.18.1 (released 2013-08-27)
remove extra import added by cherry picked changes (:commit:`d20304e`)
System Message: ERROR/3 (<stdin>, line 4044); backlink
Unknown interpreted text role "commit".
fix crawling tests under twisted pre 11.0.0 (:commit:`1994f38`)
System Message: ERROR/3 (<stdin>, line 4045); backlink
Unknown interpreted text role "commit".
py26 can not format zero length fields {} (:commit:`abf756f`)
System Message: ERROR/3 (<stdin>, line 4046); backlink
Unknown interpreted text role "commit".
test PotentiaDataLoss errors on unbound responses (:commit:`b15470d`)
System Message: ERROR/3 (<stdin>, line 4047); backlink
Unknown interpreted text role "commit".
Treat responses without content-length or Transfer-Encoding as good responses (:commit:`c4bf324`)
System Message: ERROR/3 (<stdin>, line 4048); backlink
Unknown interpreted text role "commit".
do no include ResponseFailed if http11 handler is not enabled (:commit:`6cbe684`)
System Message: ERROR/3 (<stdin>, line 4049); backlink
Unknown interpreted text role "commit".
New HTTP client wraps connection lost in ResponseFailed exception. fix #373 (:commit:`1a20bba`)
System Message: ERROR/3 (<stdin>, line 4050); backlink
Unknown interpreted text role "commit".
limit travis-ci build matrix (:commit:`3b01bb8`)
System Message: ERROR/3 (<stdin>, line 4051); backlink
Unknown interpreted text role "commit".
Merge pull request #375 from peterarenot/patch-1 (:commit:`fa766d7`)
System Message: ERROR/3 (<stdin>, line 4052); backlink
Unknown interpreted text role "commit".
Fixed so it refers to the correct folder (:commit:`3283809`)
System Message: ERROR/3 (<stdin>, line 4053); backlink
Unknown interpreted text role "commit".
added Quantal & Raring to support Ubuntu releases (:commit:`1411923`)
System Message: ERROR/3 (<stdin>, line 4054); backlink
Unknown interpreted text role "commit".
fix retry middleware which didn't retry certain connection errors after the upgrade to http1 client, closes GH-373 (:commit:`bb35ed0`)
System Message: ERROR/3 (<stdin>, line 4055); backlink
Unknown interpreted text role "commit".
fix XmlItemExporter in Python 2.7.4 and 2.7.5 (:commit:`de3e451`)
System Message: ERROR/3 (<stdin>, line 4056); backlink
Unknown interpreted text role "commit".
minor updates to 0.18 release notes (:commit:`c45e5f1`)
System Message: ERROR/3 (<stdin>, line 4057); backlink
Unknown interpreted text role "commit".
fix contributors list format (:commit:`0b60031`)
System Message: ERROR/3 (<stdin>, line 4058); backlink
Unknown interpreted text role "commit".
Scrapy 0.18.0 (released 2013-08-09)
Lot of improvements to testsuite run using Tox, including a way to test on pypi
Handle GET parameters for AJAX crawleable urls (:commit:`3fe2a32`)
System Message: ERROR/3 (<stdin>, line 4064); backlink
Unknown interpreted text role "commit".
Use lxml recover option to parse sitemaps (:issue:`347`)
System Message: ERROR/3 (<stdin>, line 4065); backlink
Unknown interpreted text role "issue".
Bugfix cookie merging by hostname and not by netloc (:issue:`352`)
System Message: ERROR/3 (<stdin>, line 4066); backlink
Unknown interpreted text role "issue".
Support disabling HttpCompressionMiddleware using a flag setting (:issue:`359`)
System Message: ERROR/3 (<stdin>, line 4067); backlink
Unknown interpreted text role "issue".
Support xml namespaces using iternodes parser in XMLFeedSpider (:issue:`12`)
System Message: ERROR/3 (<stdin>, line 4068); backlink
Unknown interpreted text role "issue".
Support dont_cache request meta flag (:issue:`19`)
System Message: ERROR/3 (<stdin>, line 4069); backlink
Unknown interpreted text role "issue".
Bugfix scrapy.utils.gz.gunzip broken by changes in python 2.7.4 (:commit:`4dc76e`)
System Message: ERROR/3 (<stdin>, line 4070); backlink
Unknown interpreted text role "commit".
Bugfix url encoding on SgmlLinkExtractor (:issue:`24`)
System Message: ERROR/3 (<stdin>, line 4071); backlink
Unknown interpreted text role "issue".
Bugfix TakeFirst processor shouldn't discard zero (0) value (:issue:`59`)
System Message: ERROR/3 (<stdin>, line 4072); backlink
Unknown interpreted text role "issue".
Support nested items in xml exporter (:issue:`66`)
System Message: ERROR/3 (<stdin>, line 4073); backlink
Unknown interpreted text role "issue".
Improve cookies handling performance (:issue:`77`)
System Message: ERROR/3 (<stdin>, line 4074); backlink
Unknown interpreted text role "issue".
Log dupe filtered requests once (:issue:`105`)
System Message: ERROR/3 (<stdin>, line 4075); backlink
Unknown interpreted text role "issue".
Split redirection middleware into status and meta based middlewares (:issue:`78`)
System Message: ERROR/3 (<stdin>, line 4076); backlink
Unknown interpreted text role "issue".
Use HTTP1.1 as default downloader handler (:issue:`109` and :issue:`318`)
System Message: ERROR/3 (<stdin>, line 4077); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 4077); backlink
Unknown interpreted text role "issue".
Support xpath form selection on FormRequest.from_response (:issue:`185`)
System Message: ERROR/3 (<stdin>, line 4078); backlink
Unknown interpreted text role "issue".
Bugfix unicode decoding error on SgmlLinkExtractor (:issue:`199`)
System Message: ERROR/3 (<stdin>, line 4079); backlink
Unknown interpreted text role "issue".
Bugfix signal dispatching on pypi interpreter (:issue:`205`)
System Message: ERROR/3 (<stdin>, line 4080); backlink
Unknown interpreted text role "issue".
Improve request delay and concurrency handling (:issue:`206`)
System Message: ERROR/3 (<stdin>, line 4081); backlink
Unknown interpreted text role "issue".
Add RFC2616 cache policy to HttpCacheMiddleware (:issue:`212`)
System Message: ERROR/3 (<stdin>, line 4082); backlink
Unknown interpreted text role "issue".
Allow customization of messages logged by engine (:issue:`214`)
System Message: ERROR/3 (<stdin>, line 4083); backlink
Unknown interpreted text role "issue".
Multiples improvements to DjangoItem (:issue:`217`, :issue:`218`, :issue:`221`)
System Message: ERROR/3 (<stdin>, line 4084); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 4084); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 4084); backlink
Unknown interpreted text role "issue".
Extend Scrapy commands using setuptools entry points (:issue:`260`)
System Message: ERROR/3 (<stdin>, line 4085); backlink
Unknown interpreted text role "issue".
Allow spider allowed_domains value to be set/tuple (:issue:`261`)
System Message: ERROR/3 (<stdin>, line 4086); backlink
Unknown interpreted text role "issue".
Support settings.getdict (:issue:`269`)
System Message: ERROR/3 (<stdin>, line 4087); backlink
Unknown interpreted text role "issue".
Simplify internal scrapy.core.scraper slot handling (:issue:`271`)
System Message: ERROR/3 (<stdin>, line 4088); backlink
Unknown interpreted text role "issue".
Added Item.copy (:issue:`290`)
System Message: ERROR/3 (<stdin>, line 4089); backlink
Unknown interpreted text role "issue".
Collect idle downloader slots (:issue:`297`)
System Message: ERROR/3 (<stdin>, line 4090); backlink
Unknown interpreted text role "issue".
Add ftp:// scheme downloader handler (:issue:`329`)
System Message: ERROR/3 (<stdin>, line 4091); backlink
Unknown interpreted text role "issue".
Added downloader benchmark webserver and spider tools :ref:`benchmarking`
System Message: ERROR/3 (<stdin>, line 4092); backlink
Unknown interpreted text role "ref".
Moved persistent (on disk) queues to a separate project (queuelib) which Scrapy now depends on
Add Scrapy commands using external libraries (:issue:`260`)
System Message: ERROR/3 (<stdin>, line 4094); backlink
Unknown interpreted text role "issue".
Added --pdb option to scrapy command line tool
Added :meth:`XPathSelector.remove_namespaces <scrapy.selector.Selector.remove_namespaces>` which allows to remove all namespaces from XML documents for convenience (to work with namespace-less XPaths). Documented in :ref:`topics-selectors`.
System Message: ERROR/3 (<stdin>, line 4096); backlink
Unknown interpreted text role "meth".
System Message: ERROR/3 (<stdin>, line 4096); backlink
Unknown interpreted text role "ref".
Several improvements to spider contracts
New default middleware named MetaRefreshMiddldeware that handles meta-refresh html tag redirections,
MetaRefreshMiddldeware and RedirectMiddleware have different priorities to address #62
added from_crawler method to spiders
added system tests with mock server
more improvements to macOS compatibility (thanks Alex Cepoi)
several more cleanups to singletons and multi-spider support (thanks Nicolas Ramirez)
support custom download slots
added --spider option to "shell" command.
log overridden settings when Scrapy starts
Thanks to everyone who contribute to this release. Here is a list of contributors sorted by number of commits:
130 Pablo Hoffman <pablo@...> 97 Daniel Graña <dangra@...> 20 Nicolás Ramírez <nramirez.uy@...> 13 Mikhail Korobov <kmike84@...> 12 Pedro Faustino <pedrobandim@...> 11 Steven Almeroth <sroth77@...> 5 Rolando Espinoza La fuente <darkrho@...> 4 Michal Danilak <mimino.coder@...> 4 Alex Cepoi <alex.cepoi@...> 4 Alexandr N Zamaraev (aka tonal) <tonal@...> 3 paul <paul.tremberth@...> 3 Martin Olveyra <molveyra@...> 3 Jordi Llonch <llonchj@...> 3 arijitchakraborty <myself.arijit@...> 2 Shane Evans <shane.evans@...> 2 joehillen <joehillen@...> 2 Hart <HartSimha@...> 2 Dan <ellisd23@...> 1 Zuhao Wan <wanzuhao@...> 1 whodatninja <blake@...> 1 vkrest <v.krestiannykov@...> 1 tpeng <pengtaoo@...> 1 Tom Mortimer-Jones <tom@...> 1 Rocio Aramberri <roschegel@...> 1 Pedro <pedro@...> 1 notsobad <wangxiaohugg@...> 1 Natan L <kuyanatan.nlao@...> 1 Mark Grey <mark.grey@...> 1 Luan <luanpab@...> 1 Libor Nenadál <libor.nenadal@...> 1 Juan M Uys <opyate@...> 1 Jonas Brunsgaard <jonas.brunsgaard@...> 1 Ilya Baryshev <baryshev@...> 1 Hasnain Lakhani <m.hasnain.lakhani@...> 1 Emanuel Schorsch <emschorsch@...> 1 Chris Tilden <chris.tilden@...> 1 Capi Etheriel <barraponto@...> 1 cacovsky <amarquesferraz@...> 1 Berend Iwema <berend@...>
Scrapy 0.16.5 (released 2013-05-30)
obey request method when Scrapy deploy is redirected to a new endpoint (:commit:`8c4fcee`)
System Message: ERROR/3 (<stdin>, line 4155); backlink
Unknown interpreted text role "commit".
fix inaccurate downloader middleware documentation. refs #280 (:commit:`40667cb`)
System Message: ERROR/3 (<stdin>, line 4156); backlink
Unknown interpreted text role "commit".
doc: remove links to diveintopython.org, which is no longer available. closes #246 (:commit:`bd58bfa`)
System Message: ERROR/3 (<stdin>, line 4157); backlink
Unknown interpreted text role "commit".
Find form nodes in invalid html5 documents (:commit:`e3d6945`)
System Message: ERROR/3 (<stdin>, line 4158); backlink
Unknown interpreted text role "commit".
Fix typo labeling attrs type bool instead of list (:commit:`a274276`)
System Message: ERROR/3 (<stdin>, line 4159); backlink
Unknown interpreted text role "commit".
Scrapy 0.16.4 (released 2013-01-23)
fixes spelling errors in documentation (:commit:`6d2b3aa`)
System Message: ERROR/3 (<stdin>, line 4164); backlink
Unknown interpreted text role "commit".
add doc about disabling an extension. refs #132 (:commit:`c90de33`)
System Message: ERROR/3 (<stdin>, line 4165); backlink
Unknown interpreted text role "commit".
Fixed error message formatting. log.err() doesn't support cool formatting and when error occurred, the message was: "ERROR: Error processing %(item)s" (:commit:`c16150c`)
System Message: ERROR/3 (<stdin>, line 4166); backlink
Unknown interpreted text role "commit".
lint and improve images pipeline error logging (:commit:`56b45fc`)
System Message: ERROR/3 (<stdin>, line 4167); backlink
Unknown interpreted text role "commit".
fixed doc typos (:commit:`243be84`)
System Message: ERROR/3 (<stdin>, line 4168); backlink
Unknown interpreted text role "commit".
add documentation topics: Broad Crawls & Common Practices (:commit:`1fbb715`)
System Message: ERROR/3 (<stdin>, line 4169); backlink
Unknown interpreted text role "commit".
fix bug in Scrapy parse command when spider is not specified explicitly. closes #209 (:commit:`c72e682`)
System Message: ERROR/3 (<stdin>, line 4170); backlink
Unknown interpreted text role "commit".
Update docs/topics/commands.rst (:commit:`28eac7a`)
System Message: ERROR/3 (<stdin>, line 4171); backlink
Unknown interpreted text role "commit".
Scrapy 0.16.3 (released 2012-12-07)
Remove concurrency limitation when using download delays and still ensure inter-request delays are enforced (:commit:`487b9b5`)
System Message: ERROR/3 (<stdin>, line 4176); backlink
Unknown interpreted text role "commit".
add error details when image pipeline fails (:commit:`8232569`)
System Message: ERROR/3 (<stdin>, line 4177); backlink
Unknown interpreted text role "commit".
improve macOS compatibility (:commit:`8dcf8aa`)
System Message: ERROR/3 (<stdin>, line 4178); backlink
Unknown interpreted text role "commit".
setup.py: use README.rst to populate long_description (:commit:`7b5310d`)
System Message: ERROR/3 (<stdin>, line 4179); backlink
Unknown interpreted text role "commit".
doc: removed obsolete references to ClientForm (:commit:`80f9bb6`)
System Message: ERROR/3 (<stdin>, line 4180); backlink
Unknown interpreted text role "commit".
correct docs for default storage backend (:commit:`2aa491b`)
System Message: ERROR/3 (<stdin>, line 4181); backlink
Unknown interpreted text role "commit".
doc: removed broken proxyhub link from FAQ (:commit:`bdf61c4`)
System Message: ERROR/3 (<stdin>, line 4182); backlink
Unknown interpreted text role "commit".
Fixed docs typo in SpiderOpenCloseLogging example (:commit:`7184094`)
System Message: ERROR/3 (<stdin>, line 4183); backlink
Unknown interpreted text role "commit".
Scrapy 0.16.2 (released 2012-11-09)
Scrapy contracts: python2.6 compat (:commit:`a4a9199`)
System Message: ERROR/3 (<stdin>, line 4189); backlink
Unknown interpreted text role "commit".
Scrapy contracts verbose option (:commit:`ec41673`)
System Message: ERROR/3 (<stdin>, line 4190); backlink
Unknown interpreted text role "commit".
proper unittest-like output for Scrapy contracts (:commit:`86635e4`)
System Message: ERROR/3 (<stdin>, line 4191); backlink
Unknown interpreted text role "commit".
added open_in_browser to debugging doc (:commit:`c9b690d`)
System Message: ERROR/3 (<stdin>, line 4192); backlink
Unknown interpreted text role "commit".
removed reference to global Scrapy stats from settings doc (:commit:`dd55067`)
System Message: ERROR/3 (<stdin>, line 4193); backlink
Unknown interpreted text role "commit".
Fix SpiderState bug in Windows platforms (:commit:`58998f4`)
System Message: ERROR/3 (<stdin>, line 4194); backlink
Unknown interpreted text role "commit".
Scrapy 0.16.1 (released 2012-10-26)
fixed LogStats extension, which got broken after a wrong merge before the 0.16 release (:commit:`8c780fd`)
System Message: ERROR/3 (<stdin>, line 4200); backlink
Unknown interpreted text role "commit".
better backward compatibility for scrapy.conf.settings (:commit:`3403089`)
System Message: ERROR/3 (<stdin>, line 4201); backlink
Unknown interpreted text role "commit".
extended documentation on how to access crawler stats from extensions (:commit:`c4da0b5`)
System Message: ERROR/3 (<stdin>, line 4202); backlink
Unknown interpreted text role "commit".
removed .hgtags (no longer needed now that Scrapy uses git) (:commit:`d52c188`)
System Message: ERROR/3 (<stdin>, line 4203); backlink
Unknown interpreted text role "commit".
fix dashes under rst headers (:commit:`fa4f7f9`)
System Message: ERROR/3 (<stdin>, line 4204); backlink
Unknown interpreted text role "commit".
set release date for 0.16.0 in news (:commit:`e292246`)
System Message: ERROR/3 (<stdin>, line 4205); backlink
Unknown interpreted text role "commit".
Scrapy 0.16.0 (released 2012-10-18)
Scrapy changes:
added :ref:`topics-contracts`, a mechanism for testing spiders in a formal/reproducible way
System Message: ERROR/3 (<stdin>, line 4213); backlink
Unknown interpreted text role "ref".
added options -o and -t to the :command:`runspider` command
System Message: ERROR/3 (<stdin>, line 4214); backlink
Unknown interpreted text role "command".
documented :doc:`topics/autothrottle` and added to extensions installed by default. You still need to enable it with :setting:`AUTOTHROTTLE_ENABLED`
System Message: ERROR/3 (<stdin>, line 4215); backlink
Unknown interpreted text role "doc".
System Message: ERROR/3 (<stdin>, line 4215); backlink
Unknown interpreted text role "setting".
major Stats Collection refactoring: removed separation of global/per-spider stats, removed stats-related signals (stats_spider_opened, etc). Stats are much simpler now, backward compatibility is kept on the Stats Collector API and signals.
added :meth:`~scrapy.spidermiddlewares.SpiderMiddleware.process_start_requests` method to spider middlewares
System Message: ERROR/3 (<stdin>, line 4217); backlink
Unknown interpreted text role "meth".
dropped Signals singleton. Signals should now be accessed through the Crawler.signals attribute. See the signals documentation for more info.
dropped Stats Collector singleton. Stats can now be accessed through the Crawler.stats attribute. See the stats collection documentation for more info.
documented :ref:`topics-api`
System Message: ERROR/3 (<stdin>, line 4220); backlink
Unknown interpreted text role "ref".
lxml is now the default selectors backend instead of libxml2
ported FormRequest.from_response() to use lxml instead of ClientForm
removed modules: scrapy.xlib.BeautifulSoup and scrapy.xlib.ClientForm
SitemapSpider: added support for sitemap urls ending in .xml and .xml.gz, even if they advertise a wrong content type (:commit:`10ed28b`)
System Message: ERROR/3 (<stdin>, line 4224); backlink
Unknown interpreted text role "commit".
StackTraceDump extension: also dump trackref live references (:commit:`fe2ce93`)
System Message: ERROR/3 (<stdin>, line 4225); backlink
Unknown interpreted text role "commit".
nested items now fully supported in JSON and JSONLines exporters
added :reqmeta:`cookiejar` Request meta key to support multiple cookie sessions per spider
System Message: ERROR/3 (<stdin>, line 4227); backlink
Unknown interpreted text role "reqmeta".
decoupled encoding detection code to w3lib.encoding, and ported Scrapy code to use that module
dropped support for Python 2.5. See https://blog.scrapinghub.com/2012/02/27/scrapy-0-15-dropping-support-for-python-2-5/
dropped support for Twisted 2.5
added :setting:`REFERER_ENABLED` setting, to control referer middleware
System Message: ERROR/3 (<stdin>, line 4231); backlink
Unknown interpreted text role "setting".
changed default user agent to: Scrapy/VERSION (+http://scrapy.org)
removed (undocumented) HTMLImageLinkExtractor class from scrapy.contrib.linkextractors.image
removed per-spider settings (to be replaced by instantiating multiple crawler objects)
USER_AGENT spider attribute will no longer work, use user_agent attribute instead
DOWNLOAD_TIMEOUT spider attribute will no longer work, use download_timeout attribute instead
removed ENCODING_ALIASES setting, as encoding auto-detection has been moved to the w3lib library
promoted :ref:`topics-djangoitem` to main contrib
System Message: ERROR/3 (<stdin>, line 4238); backlink
Unknown interpreted text role "ref".
LogFormatter method now return dicts(instead of strings) to support lazy formatting (:issue:`164`, :commit:`dcef7b0`)
System Message: ERROR/3 (<stdin>, line 4239); backlink
Unknown interpreted text role "issue".
System Message: ERROR/3 (<stdin>, line 4239); backlink
Unknown interpreted text role "commit".
downloader handlers (:setting:`DOWNLOAD_HANDLERS` setting) now receive settings as the first argument of the __init__ method
System Message: ERROR/3 (<stdin>, line 4240); backlink
Unknown interpreted text role "setting".
replaced memory usage acounting with (more portable) resource module, removed scrapy.utils.memory module
removed signal: scrapy.mail.mail_sent
removed TRACK_REFS setting, now :ref:`trackrefs <topics-leaks-trackrefs>` is always enabled
System Message: ERROR/3 (<stdin>, line 4243); backlink
Unknown interpreted text role "ref".
DBM is now the default storage backend for HTTP cache middleware
number of log messages (per level) are now tracked through Scrapy stats (stat name: log_count/LEVEL)
number received responses are now tracked through Scrapy stats (stat name: response_received_count)
removed scrapy.log.started attribute
Scrapy 0.14.4
added precise to supported Ubuntu distros (:commit:`b7e46df`)
System Message: ERROR/3 (<stdin>, line 4252); backlink
Unknown interpreted text role "commit".
fixed bug in json-rpc webservice reported in https://groups.google.com/forum/#!topic/scrapy-users/qgVBmFybNAQ/discussion. also removed no longer supported 'run' command from extras/scrapy-ws.py (:commit:`340fbdb`)
System Message: ERROR/3 (<stdin>, line 4253); backlink
Unknown interpreted text role "commit".
meta tag attributes for content-type http equiv can be in any order. #123 (:commit:`0cb68af`)
System Message: ERROR/3 (<stdin>, line 4254); backlink
Unknown interpreted text role "commit".
replace "import Image" by more standard "from PIL import Image". closes #88 (:commit:`4d17048`)
System Message: ERROR/3 (<stdin>, line 4255); backlink
Unknown interpreted text role "commit".
return trial status as bin/runtests.sh exit value. #118 (:commit:`b7b2e7f`)
System Message: ERROR/3 (<stdin>, line 4256); backlink
Unknown interpreted text role "commit".
Scrapy 0.14.3
forgot to include pydispatch license. #118 (:commit:`fd85f9c`)
System Message: ERROR/3 (<stdin>, line 4261); backlink
Unknown interpreted text role "commit".
include egg files used by testsuite in source distribution. #118 (:commit:`c897793`)
System Message: ERROR/3 (<stdin>, line 4262); backlink
Unknown interpreted text role "commit".
update docstring in project template to avoid confusion with genspider command, which may be considered as an advanced feature. refs #107 (:commit:`2548dcc`)
System Message: ERROR/3 (<stdin>, line 4263); backlink
Unknown interpreted text role "commit".
added note to docs/topics/firebug.rst about google directory being shut down (:commit:`668e352`)
System Message: ERROR/3 (<stdin>, line 4264); backlink
Unknown interpreted text role "commit".
don't discard slot when empty, just save in another dict in order to recycle if needed again. (:commit:`8e9f607`)
System Message: ERROR/3 (<stdin>, line 4265); backlink
Unknown interpreted text role "commit".
do not fail handling unicode xpaths in libxml2 backed selectors (:commit:`b830e95`)
System Message: ERROR/3 (<stdin>, line 4266); backlink
Unknown interpreted text role "commit".
fixed minor mistake in Request objects documentation (:commit:`bf3c9ee`)
System Message: ERROR/3 (<stdin>, line 4267); backlink
Unknown interpreted text role "commit".
fixed minor defect in link extractors documentation (:commit:`ba14f38`)
System Message: ERROR/3 (<stdin>, line 4268); backlink
Unknown interpreted text role "commit".
removed some obsolete remaining code related to sqlite support in Scrapy (:commit:`0665175`)
System Message: ERROR/3 (<stdin>, line 4269); backlink
Unknown interpreted text role "commit".
Scrapy 0.14.2
move buffer pointing to start of file before computing checksum. refs #92 (:commit:`6a5bef2`)
System Message: ERROR/3 (<stdin>, line 4274); backlink
Unknown interpreted text role "commit".
Compute image checksum before persisting images. closes #92 (:commit:`9817df1`)
System Message: ERROR/3 (<stdin>, line 4275); backlink
Unknown interpreted text role "commit".
remove leaking references in cached failures (:commit:`673a120`)
System Message: ERROR/3 (<stdin>, line 4276); backlink
Unknown interpreted text role "commit".
fixed bug in MemoryUsage extension: get_engine_status() takes exactly 1 argument (0 given) (:commit:`11133e9`)
System Message: ERROR/3 (<stdin>, line 4277); backlink
Unknown interpreted text role "commit".
fixed struct.error on http compression middleware. closes #87 (:commit:`1423140`)
System Message: ERROR/3 (<stdin>, line 4278); backlink
Unknown interpreted text role "commit".
ajax crawling wasn't expanding for unicode urls (:commit:`0de3fb4`)
System Message: ERROR/3 (<stdin>, line 4279); backlink
Unknown interpreted text role "commit".
Catch start_requests iterator errors. refs #83 (:commit:`454a21d`)
System Message: ERROR/3 (<stdin>, line 4280); backlink
Unknown interpreted text role "commit".
Speed-up libxml2 XPathSelector (:commit:`2fbd662`)
System Message: ERROR/3 (<stdin>, line 4281); backlink
Unknown interpreted text role "commit".
updated versioning doc according to recent changes (:commit:`0a070f5`)
System Message: ERROR/3 (<stdin>, line 4282); backlink
Unknown interpreted text role "commit".
scrapyd: fixed documentation link (:commit:`2b4e4c3`)
System Message: ERROR/3 (<stdin>, line 4283); backlink
Unknown interpreted text role "commit".
extras/makedeb.py: no longer obtaining version from git (:commit:`caffe0e`)
System Message: ERROR/3 (<stdin>, line 4284); backlink
Unknown interpreted text role "commit".
Scrapy 0.14.1
extras/makedeb.py: no longer obtaining version from git (:commit:`caffe0e`)
System Message: ERROR/3 (<stdin>, line 4289); backlink
Unknown interpreted text role "commit".
bumped version to 0.14.1 (:commit:`6cb9e1c`)
System Message: ERROR/3 (<stdin>, line 4290); backlink
Unknown interpreted text role "commit".
fixed reference to tutorial directory (:commit:`4b86bd6`)
System Message: ERROR/3 (<stdin>, line 4291); backlink
Unknown interpreted text role "commit".
doc: removed duplicated callback argument from Request.replace() (:commit:`1aeccdd`)
System Message: ERROR/3 (<stdin>, line 4292); backlink
Unknown interpreted text role "commit".
fixed formatting of scrapyd doc (:commit:`8bf19e6`)
System Message: ERROR/3 (<stdin>, line 4293); backlink
Unknown interpreted text role "commit".
Dump stacks for all running threads and fix engine status dumped by StackTraceDump extension (:commit:`14a8e6e`)
System Message: ERROR/3 (<stdin>, line 4294); backlink
Unknown interpreted text role "commit".
added comment about why we disable ssl on boto images upload (:commit:`5223575`)
System Message: ERROR/3 (<stdin>, line 4295); backlink
Unknown interpreted text role "commit".
SSL handshaking hangs when doing too many parallel connections to S3 (:commit:`63d583d`)
System Message: ERROR/3 (<stdin>, line 4296); backlink
Unknown interpreted text role "commit".
change tutorial to follow changes on dmoz site (:commit:`bcb3198`)
System Message: ERROR/3 (<stdin>, line 4297); backlink
Unknown interpreted text role "commit".
Avoid _disconnectedDeferred AttributeError exception in Twisted>=11.1.0 (:commit:`98f3f87`)
System Message: ERROR/3 (<stdin>, line 4298); backlink
Unknown interpreted text role "commit".
allow spider to set autothrottle max concurrency (:commit:`175a4b5`)
System Message: ERROR/3 (<stdin>, line 4299); backlink
Unknown interpreted text role "commit".
Scrapy 0.14
New features and settings
Support for AJAX crawleable urls
New persistent scheduler that stores requests on disk, allowing to suspend and resume crawls (:rev:`2737`)
System Message: ERROR/3 (<stdin>, line 4308); backlink
Unknown interpreted text role "rev".
added -o option to scrapy crawl, a shortcut for dumping scraped items into a file (or standard output using -)
Added support for passing custom settings to Scrapyd schedule.json api (:rev:`2779`, :rev:`2783`)
System Message: ERROR/3 (<stdin>, line 4310); backlink
Unknown interpreted text role "rev".
System Message: ERROR/3 (<stdin>, line 4310); backlink
Unknown interpreted text role "rev".
New ChunkedTransferMiddleware (enabled by default) to support chunked transfer encoding (:rev:`2769`)
System Message: ERROR/3 (<stdin>, line 4311); backlink
Unknown interpreted text role "rev".
Add boto 2.0 support for S3 downloader handler (:rev:`2763`)
System Message: ERROR/3 (<stdin>, line 4312); backlink
Unknown interpreted text role "rev".
Added marshal to formats supported by feed exports (:rev:`2744`)
System Message: ERROR/3 (<stdin>, line 4313); backlink
Unknown interpreted text role "rev".
In request errbacks, offending requests are now received in failure.request attribute (:rev:`2738`)
System Message: ERROR/3 (<stdin>, line 4314); backlink
Unknown interpreted text role "rev".
- Big downloader refactoring to support per domain/ip concurrency limits (:rev:`2732`)
System Message: ERROR/3 (<stdin>, line 4317); backlink
Unknown interpreted text role "rev".
- CONCURRENT_REQUESTS_PER_SPIDER setting has been deprecated and replaced by:
:setting:`CONCURRENT_REQUESTS`, :setting:`CONCURRENT_REQUESTS_PER_DOMAIN`, :setting:`CONCURRENT_REQUESTS_PER_IP`
System Message: ERROR/3 (<stdin>, line 4317); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 4317); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 4317); backlink
Unknown interpreted text role "setting".
check the documentation for more details
Added builtin caching DNS resolver (:rev:`2728`)
System Message: ERROR/3 (<stdin>, line 4319); backlink
Unknown interpreted text role "rev".
Moved Amazon AWS-related components/extensions (SQS spider queue, SimpleDB stats collector) to a separate project: [scaws](https://github.com/scrapinghub/scaws) (:rev:`2706`, :rev:`2714`)
System Message: ERROR/3 (<stdin>, line 4320); backlink
Unknown interpreted text role "rev".
System Message: ERROR/3 (<stdin>, line 4320); backlink
Unknown interpreted text role "rev".
Moved spider queues to scrapyd: scrapy.spiderqueue -> scrapyd.spiderqueue (:rev:`2708`)
System Message: ERROR/3 (<stdin>, line 4321); backlink
Unknown interpreted text role "rev".
Moved sqlite utils to scrapyd: scrapy.utils.sqlite -> scrapyd.sqlite (:rev:`2781`)
System Message: ERROR/3 (<stdin>, line 4322); backlink
Unknown interpreted text role "rev".
Real support for returning iterators on start_requests() method. The iterator is now consumed during the crawl when the spider is getting idle (:rev:`2704`)
System Message: ERROR/3 (<stdin>, line 4323); backlink
Unknown interpreted text role "rev".
Added :setting:`REDIRECT_ENABLED` setting to quickly enable/disable the redirect middleware (:rev:`2697`)
System Message: ERROR/3 (<stdin>, line 4324); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 4324); backlink
Unknown interpreted text role "rev".
Added :setting:`RETRY_ENABLED` setting to quickly enable/disable the retry middleware (:rev:`2694`)
System Message: ERROR/3 (<stdin>, line 4325); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 4325); backlink
Unknown interpreted text role "rev".
Added CloseSpider exception to manually close spiders (:rev:`2691`)
System Message: ERROR/3 (<stdin>, line 4326); backlink
Unknown interpreted text role "rev".
Improved encoding detection by adding support for HTML5 meta charset declaration (:rev:`2690`)
System Message: ERROR/3 (<stdin>, line 4327); backlink
Unknown interpreted text role "rev".
Refactored close spider behavior to wait for all downloads to finish and be processed by spiders, before closing the spider (:rev:`2688`)
System Message: ERROR/3 (<stdin>, line 4328); backlink
Unknown interpreted text role "rev".
Added SitemapSpider (see documentation in Spiders page) (:rev:`2658`)
System Message: ERROR/3 (<stdin>, line 4329); backlink
Unknown interpreted text role "rev".
Added LogStats extension for periodically logging basic stats (like crawled pages and scraped items) (:rev:`2657`)
System Message: ERROR/3 (<stdin>, line 4330); backlink
Unknown interpreted text role "rev".
Make handling of gzipped responses more robust (#319, :rev:`2643`). Now Scrapy will try and decompress as much as possible from a gzipped response, instead of failing with an IOError.
System Message: ERROR/3 (<stdin>, line 4331); backlink
Unknown interpreted text role "rev".
Simplified !MemoryDebugger extension to use stats for dumping memory debugging info (:rev:`2639`)
System Message: ERROR/3 (<stdin>, line 4332); backlink
Unknown interpreted text role "rev".
Added new command to edit spiders: scrapy edit (:rev:`2636`) and -e flag to genspider command that uses it (:rev:`2653`)
System Message: ERROR/3 (<stdin>, line 4333); backlink
Unknown interpreted text role "rev".
System Message: ERROR/3 (<stdin>, line 4333); backlink
Unknown interpreted text role "rev".
Changed default representation of items to pretty-printed dicts. (:rev:`2631`). This improves default logging by making log more readable in the default case, for both Scraped and Dropped lines.
System Message: ERROR/3 (<stdin>, line 4334); backlink
Unknown interpreted text role "rev".
Added :signal:`spider_error` signal (:rev:`2628`)
System Message: ERROR/3 (<stdin>, line 4335); backlink
Unknown interpreted text role "signal".
System Message: ERROR/3 (<stdin>, line 4335); backlink
Unknown interpreted text role "rev".
Added :setting:`COOKIES_ENABLED` setting (:rev:`2625`)
System Message: ERROR/3 (<stdin>, line 4336); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 4336); backlink
Unknown interpreted text role "rev".
Stats are now dumped to Scrapy log (default value of :setting:`STATS_DUMP` setting has been changed to True). This is to make Scrapy users more aware of Scrapy stats and the data that is collected there.
System Message: ERROR/3 (<stdin>, line 4337); backlink
Unknown interpreted text role "setting".
Added support for dynamically adjusting download delay and maximum concurrent requests (:rev:`2599`)
System Message: ERROR/3 (<stdin>, line 4338); backlink
Unknown interpreted text role "rev".
Added new DBM HTTP cache storage backend (:rev:`2576`)
System Message: ERROR/3 (<stdin>, line 4339); backlink
Unknown interpreted text role "rev".
Added listjobs.json API to Scrapyd (:rev:`2571`)
System Message: ERROR/3 (<stdin>, line 4340); backlink
Unknown interpreted text role "rev".
CsvItemExporter: added join_multivalued parameter (:rev:`2578`)
System Message: ERROR/3 (<stdin>, line 4341); backlink
Unknown interpreted text role "rev".
Added namespace support to xmliter_lxml (:rev:`2552`)
System Message: ERROR/3 (<stdin>, line 4342); backlink
Unknown interpreted text role "rev".
Improved cookies middleware by making COOKIES_DEBUG nicer and documenting it (:rev:`2579`)
System Message: ERROR/3 (<stdin>, line 4343); backlink
Unknown interpreted text role "rev".
Several improvements to Scrapyd and Link extractors
Code rearranged and removed
- Merged item passed and item scraped concepts, as they have often proved confusing in the past. This means: (:rev:`2630`)
System Message: ERROR/3 (<stdin>, line 4352); backlink
Unknown interpreted text role "rev".
- original item_scraped signal was removed
- original item_passed signal was renamed to item_scraped
- old log lines Scraped Item... were removed
- old log lines Passed Item... were renamed to Scraped Item... lines and downgraded to DEBUG level
- Reduced Scrapy codebase by striping part of Scrapy code into two new libraries:
w3lib (several functions from scrapy.utils.{http,markup,multipart,response,url}, done in :rev:`2584`)
System Message: ERROR/3 (<stdin>, line 4355); backlink
Unknown interpreted text role "rev".
scrapely (was scrapy.contrib.ibl, done in :rev:`2586`)
System Message: ERROR/3 (<stdin>, line 4356); backlink
Unknown interpreted text role "rev".
Removed unused function: scrapy.utils.request.request_info() (:rev:`2577`)
System Message: ERROR/3 (<stdin>, line 4357); backlink
Unknown interpreted text role "rev".
Removed googledir project from examples/googledir. There's now a new example project called dirbot available on GitHub: https://github.com/scrapy/dirbot
Removed support for default field values in Scrapy items (:rev:`2616`)
System Message: ERROR/3 (<stdin>, line 4359); backlink
Unknown interpreted text role "rev".
Removed experimental crawlspider v2 (:rev:`2632`)
System Message: ERROR/3 (<stdin>, line 4360); backlink
Unknown interpreted text role "rev".
Removed scheduler middleware to simplify architecture. Duplicates filter is now done in the scheduler itself, using the same dupe fltering class as before (DUPEFILTER_CLASS setting) (:rev:`2640`)
System Message: ERROR/3 (<stdin>, line 4361); backlink
Unknown interpreted text role "rev".
Removed support for passing urls to scrapy crawl command (use scrapy parse instead) (:rev:`2704`)
System Message: ERROR/3 (<stdin>, line 4362); backlink
Unknown interpreted text role "rev".
Removed deprecated Execution Queue (:rev:`2704`)
System Message: ERROR/3 (<stdin>, line 4363); backlink
Unknown interpreted text role "rev".
Removed (undocumented) spider context extension (from scrapy.contrib.spidercontext) (:rev:`2780`)
System Message: ERROR/3 (<stdin>, line 4364); backlink
Unknown interpreted text role "rev".
removed CONCURRENT_SPIDERS setting (use scrapyd maxproc instead) (:rev:`2789`)
System Message: ERROR/3 (<stdin>, line 4365); backlink
Unknown interpreted text role "rev".
Renamed attributes of core components: downloader.sites -> downloader.slots, scraper.sites -> scraper.slots (:rev:`2717`, :rev:`2718`)
System Message: ERROR/3 (<stdin>, line 4366); backlink
Unknown interpreted text role "rev".
System Message: ERROR/3 (<stdin>, line 4366); backlink
Unknown interpreted text role "rev".
Renamed setting CLOSESPIDER_ITEMPASSED to :setting:`CLOSESPIDER_ITEMCOUNT` (:rev:`2655`). Backward compatibility kept.
System Message: ERROR/3 (<stdin>, line 4367); backlink
Unknown interpreted text role "setting".
System Message: ERROR/3 (<stdin>, line 4367); backlink
Unknown interpreted text role "rev".
Scrapy 0.12
The numbers like #NNN reference tickets in the old issue tracker (Trac) which is no longer available.
New features and improvements
Passed item is now sent in the item argument of the :signal:`item_passed <item_scraped>` (#273)
System Message: ERROR/3 (<stdin>, line 4377); backlink
Unknown interpreted text role "signal".
Added verbose option to scrapy version command, useful for bug reports (#298)
HTTP cache now stored by default in the project data dir (#279)
Added project data storage directory (#276, #277)
Documented file structure of Scrapy projects (see command-line tool doc)
New lxml backend for XPath selectors (#147)
Per-spider settings (#245)
Support exit codes to signal errors in Scrapy commands (#248)
Added -c argument to scrapy shell command
Made libxml2 optional (#260)
New deploy command (#261)
Added :setting:`CLOSESPIDER_PAGECOUNT` setting (#253)
System Message: ERROR/3 (<stdin>, line 4389); backlink
Unknown interpreted text role "setting".
Added :setting:`CLOSESPIDER_ERRORCOUNT` setting (#254)
System Message: ERROR/3 (<stdin>, line 4390); backlink
Unknown interpreted text role "setting".
Scrapyd changes
- Scrapyd now uses one process per spider
- It stores one log file per spider run, and rotate them keeping the lastest 5 logs per spider (by default)
- A minimal web ui was added, available at http://localhost:6800 by default
- There is now a scrapy server command to start a Scrapyd server of the current project
Changes to settings
- added HTTPCACHE_ENABLED setting (False by default) to enable HTTP cache middleware
- changed HTTPCACHE_EXPIRATION_SECS semantics: now zero means "never expire".
Deprecated/obsoleted functionality
- Deprecated runserver command in favor of server command which starts a Scrapyd server. See also: Scrapyd changes
- Deprecated queue command in favor of using Scrapyd schedule.json API. See also: Scrapyd changes
- Removed the !LxmlItemLoader (experimental contrib which never graduated to main contrib)
Scrapy 0.10
The numbers like #NNN reference tickets in the old issue tracker (Trac) which is no longer available.
New features and improvements
- New Scrapy service called scrapyd for deploying Scrapy crawlers in production (#218) (documentation available)
- Simplified Images pipeline usage which doesn't require subclassing your own images pipeline now (#217)
- Scrapy shell now shows the Scrapy log by default (#206)
- Refactored execution queue in a common base code and pluggable backends called "spider queues" (#220)
- New persistent spider queue (based on SQLite) (#198), available by default, which allows to start Scrapy in server mode and then schedule spiders to run.
- Added documentation for Scrapy command-line tool and all its available sub-commands. (documentation available)
- Feed exporters with pluggable backends (#197) (documentation available)
- Deferred signals (#193)
- Added two new methods to item pipeline open_spider(), close_spider() with deferred support (#195)
- Support for overriding default request headers per spider (#181)
- Replaced default Spider Manager with one with similar functionality but not depending on Twisted Plugins (#186)
- Splitted Debian package into two packages - the library and the service (#187)
- Scrapy log refactoring (#188)
- New extension for keeping persistent spider contexts among different runs (#203)
- Added dont_redirect request.meta key for avoiding redirects (#233)
- Added dont_retry request.meta key for avoiding retries (#234)
Command-line tool changes
- New scrapy command which replaces the old scrapy-ctl.py (#199) - there is only one global scrapy command now, instead of one scrapy-ctl.py per project - Added scrapy.bat script for running more conveniently from Windows
- Added bash completion to command-line tool (#210)
- Renamed command start to runserver (#209)
API changes
- url and body attributes of Request objects are now read-only (#230)
- Request.copy() and Request.replace() now also copies their callback and errback attributes (#231)
- Removed UrlFilterMiddleware from scrapy.contrib (already disabled by default)
- Offsite middleware doesn't filter out any request coming from a spider that doesn't have a allowed_domains attribute (#225)
- Removed Spider Manager load() method. Now spiders are loaded in the __init__ method itself.
- Changes to Scrapy Manager (now called "Crawler"):
- scrapy.core.manager.ScrapyManager class renamed to scrapy.crawler.Crawler
- scrapy.core.manager.scrapymanager singleton moved to scrapy.project.crawler
- Moved module: scrapy.contrib.spidermanager to scrapy.spidermanager
- Spider Manager singleton moved from scrapy.spider.spiders to the spiders` attribute of ``scrapy.project.crawler singleton.
- moved Stats Collector classes: (#204)
- scrapy.stats.collector.StatsCollector to scrapy.statscol.StatsCollector
- scrapy.stats.collector.SimpledbStatsCollector to scrapy.contrib.statscol.SimpledbStatsCollector
- default per-command settings are now specified in the default_settings attribute of command object class (#201)
- changed arguments of Item pipeline process_item() method from (spider, item) to (item, spider)
- backward compatibility kept (with deprecation warning)
- moved scrapy.core.signals module to scrapy.signals
- backward compatibility kept (with deprecation warning)
- moved scrapy.core.exceptions module to scrapy.exceptions
- backward compatibility kept (with deprecation warning)
- added handles_request() class method to BaseSpider
- dropped scrapy.log.exc() function (use scrapy.log.err() instead)
- dropped component argument of scrapy.log.msg() function
- dropped scrapy.log.log_level attribute
- Added from_settings() class methods to Spider Manager, and Item Pipeline Manager
Changes to settings
- Added HTTPCACHE_IGNORE_SCHEMES setting to ignore certain schemes on !HttpCacheMiddleware (#225)
- Added SPIDER_QUEUE_CLASS setting which defines the spider queue to use (#220)
- Added KEEP_ALIVE setting (#220)
- Removed SERVICE_QUEUE setting (#220)
- Removed COMMANDS_SETTINGS_MODULE setting (#201)
- Renamed REQUEST_HANDLERS to DOWNLOAD_HANDLERS and make download handlers classes (instead of functions)
Scrapy 0.9
The numbers like #NNN reference tickets in the old issue tracker (Trac) which is no longer available.
New features and improvements
Added SMTP-AUTH support to scrapy.mail
New settings added: MAIL_USER, MAIL_PASS (:rev:`2065` | #149)
System Message: ERROR/3 (<stdin>, line 4495); backlink
Unknown interpreted text role "rev".
Added new scrapy-ctl view command - To view URL in the browser, as seen by Scrapy (:rev:`2039`)
System Message: ERROR/3 (<stdin>, line 4496); backlink
Unknown interpreted text role "rev".
Added web service for controlling Scrapy process (this also deprecates the web console. (:rev:`2053` | #167)
System Message: ERROR/3 (<stdin>, line 4497); backlink
Unknown interpreted text role "rev".
Support for running Scrapy as a service, for production systems (:rev:`1988`, :rev:`2054`, :rev:`2055`, :rev:`2056`, :rev:`2057` | #168)
System Message: ERROR/3 (<stdin>, line 4498); backlink
Unknown interpreted text role "rev".
System Message: ERROR/3 (<stdin>, line 4498); backlink
Unknown interpreted text role "rev".
System Message: ERROR/3 (<stdin>, line 4498); backlink
Unknown interpreted text role "rev".
System Message: ERROR/3 (<stdin>, line 4498); backlink
Unknown interpreted text role "rev".
System Message: ERROR/3 (<stdin>, line 4498); backlink
Unknown interpreted text role "rev".
Added wrapper induction library (documentation only available in source code for now). (:rev:`2011`)
System Message: ERROR/3 (<stdin>, line 4499); backlink
Unknown interpreted text role "rev".
Simplified and improved response encoding support (:rev:`1961`, :rev:`1969`)
System Message: ERROR/3 (<stdin>, line 4500); backlink
Unknown interpreted text role "rev".
System Message: ERROR/3 (<stdin>, line 4500); backlink
Unknown interpreted text role "rev".
Added LOG_ENCODING setting (:rev:`1956`, documentation available)
System Message: ERROR/3 (<stdin>, line 4501); backlink
Unknown interpreted text role "rev".
Added RANDOMIZE_DOWNLOAD_DELAY setting (enabled by default) (:rev:`1923`, doc available)
System Message: ERROR/3 (<stdin>, line 4502); backlink
Unknown interpreted text role "rev".
MailSender is no longer IO-blocking (:rev:`1955` | #146)
System Message: ERROR/3 (<stdin>, line 4503); backlink
Unknown interpreted text role "rev".
Linkextractors and new Crawlspider now handle relative base tag urls (:rev:`1960` | #148)
System Message: ERROR/3 (<stdin>, line 4504); backlink
Unknown interpreted text role "rev".
Several improvements to Item Loaders and processors (:rev:`2022`, :rev:`2023`, :rev:`2024`, :rev:`2025`, :rev:`2026`, :rev:`2027`, :rev:`2028`, :rev:`2029`, :rev:`2030`)
System Message: ERROR/3 (<stdin>, line 4505); backlink
Unknown interpreted text role "rev".
System Message: ERROR/3 (<stdin>, line 4505); backlink
Unknown interpreted text role "rev".
System Message: ERROR/3 (<stdin>, line 4505); backlink
Unknown interpreted text role "rev".
System Message: ERROR/3 (<stdin>, line 4505); backlink
Unknown interpreted text role "rev".
System Message: ERROR/3 (<stdin>, line 4505); backlink
Unknown interpreted text role "rev".
System Message: ERROR/3 (<stdin>, line 4505); backlink
Unknown interpreted text role "rev".
System Message: ERROR/3 (<stdin>, line 4505); backlink
Unknown interpreted text role "rev".
System Message: ERROR/3 (<stdin>, line 4505); backlink
Unknown interpreted text role "rev".
System Message: ERROR/3 (<stdin>, line 4505); backlink
Unknown interpreted text role "rev".
Added support for adding variables to telnet console (:rev:`2047` | #165)
System Message: ERROR/3 (<stdin>, line 4506); backlink
Unknown interpreted text role "rev".
Support for requests without callbacks (:rev:`2050` | #166)
System Message: ERROR/3 (<stdin>, line 4507); backlink
Unknown interpreted text role "rev".
API changes
Change Spider.domain_name to Spider.name (SEP-012, :rev:`1975`)
System Message: ERROR/3 (<stdin>, line 4512); backlink
Unknown interpreted text role "rev".
Response.encoding is now the detected encoding (:rev:`1961`)
System Message: ERROR/3 (<stdin>, line 4513); backlink
Unknown interpreted text role "rev".
HttpErrorMiddleware now returns None or raises an exception (:rev:`2006` | #157)
System Message: ERROR/3 (<stdin>, line 4514); backlink
Unknown interpreted text role "rev".
scrapy.command modules relocation (:rev:`2035`, :rev:`2036`, :rev:`2037`)
System Message: ERROR/3 (<stdin>, line 4515); backlink
Unknown interpreted text role "rev".
System Message: ERROR/3 (<stdin>, line 4515); backlink
Unknown interpreted text role "rev".
System Message: ERROR/3 (<stdin>, line 4515); backlink
Unknown interpreted text role "rev".
Added ExecutionQueue for feeding spiders to scrape (:rev:`2034`)
System Message: ERROR/3 (<stdin>, line 4516); backlink
Unknown interpreted text role "rev".
Removed ExecutionEngine singleton (:rev:`2039`)
System Message: ERROR/3 (<stdin>, line 4517); backlink
Unknown interpreted text role "rev".
Ported S3ImagesStore (images pipeline) to use boto and threads (:rev:`2033`)
System Message: ERROR/3 (<stdin>, line 4518); backlink
Unknown interpreted text role "rev".
Moved module: scrapy.management.telnet to scrapy.telnet (:rev:`2047`)
System Message: ERROR/3 (<stdin>, line 4519); backlink
Unknown interpreted text role "rev".
Changes to default settings
Changed default SCHEDULER_ORDER to DFO (:rev:`1939`)
System Message: ERROR/3 (<stdin>, line 4524); backlink
Unknown interpreted text role "rev".
Scrapy 0.8
The numbers like #NNN reference tickets in the old issue tracker (Trac) which is no longer available.
New features
Added DEFAULT_RESPONSE_ENCODING setting (:rev:`1809`)
System Message: ERROR/3 (<stdin>, line 4534); backlink
Unknown interpreted text role "rev".
Added dont_click argument to FormRequest.from_response() method (:rev:`1813`, :rev:`1816`)
System Message: ERROR/3 (<stdin>, line 4535); backlink
Unknown interpreted text role "rev".
System Message: ERROR/3 (<stdin>, line 4535); backlink
Unknown interpreted text role "rev".
Added clickdata argument to FormRequest.from_response() method (:rev:`1802`, :rev:`1803`)
System Message: ERROR/3 (<stdin>, line 4536); backlink
Unknown interpreted text role "rev".
System Message: ERROR/3 (<stdin>, line 4536); backlink
Unknown interpreted text role "rev".
Added support for HTTP proxies (HttpProxyMiddleware) (:rev:`1781`, :rev:`1785`)
System Message: ERROR/3 (<stdin>, line 4537); backlink
Unknown interpreted text role "rev".
System Message: ERROR/3 (<stdin>, line 4537); backlink
Unknown interpreted text role "rev".
Offsite spider middleware now logs messages when filtering out requests (:rev:`1841`)
System Message: ERROR/3 (<stdin>, line 4538); backlink
Unknown interpreted text role "rev".
Backward-incompatible changes
Changed scrapy.utils.response.get_meta_refresh() signature (:rev:`1804`)
System Message: ERROR/3 (<stdin>, line 4543); backlink
Unknown interpreted text role "rev".
Removed deprecated scrapy.item.ScrapedItem class - use scrapy.item.Item instead (:rev:`1838`)
System Message: ERROR/3 (<stdin>, line 4544); backlink
Unknown interpreted text role "rev".
Removed deprecated scrapy.xpath module - use scrapy.selector instead. (:rev:`1836`)
System Message: ERROR/3 (<stdin>, line 4545); backlink
Unknown interpreted text role "rev".
Removed deprecated core.signals.domain_open signal - use core.signals.domain_opened instead (:rev:`1822`)
System Message: ERROR/3 (<stdin>, line 4546); backlink
Unknown interpreted text role "rev".
- log.msg() now receives a spider argument (:rev:`1822`)
System Message: ERROR/3 (<stdin>, line 4547); backlink
Unknown interpreted text role "rev".
- Old domain argument has been deprecated and will be removed in 0.9. For spiders, you should always use the spider argument and pass spider references. If you really want to pass a string, use the component argument instead.
Changed core signals domain_opened, domain_closed, domain_idle
- Changed Item pipeline to use spiders instead of domains
The domain argument of process_item() item pipeline method was changed to spider, the new signature is: process_item(spider, item) (:rev:`1827` | #105)
System Message: ERROR/3 (<stdin>, line 4551); backlink
Unknown interpreted text role "rev".
To quickly port your code (to work with Scrapy 0.8) just use spider.domain_name where you previously used domain.
- Changed Stats API to use spiders instead of domains (:rev:`1849` | #113)
System Message: ERROR/3 (<stdin>, line 4557); backlink
Unknown interpreted text role "rev".
- StatsCollector was changed to receive spider references (instead of domains) in its methods (set_value, inc_value, etc).
- added StatsCollector.iter_spider_stats() method
- removed StatsCollector.list_domains() method
- Also, Stats signals were renamed and now pass around spider references (instead of domains). Here's a summary of the changes:
- To quickly port your code (to work with Scrapy 0.8) just use spider.domain_name where you previously used domain. spider_stats contains exactly the same data as domain_stats.
- CloseDomain extension moved to scrapy.contrib.closespider.CloseSpider (:rev:`1833`)
System Message: ERROR/3 (<stdin>, line 4561); backlink
Unknown interpreted text role "rev".
- Its settings were also renamed:
- CLOSEDOMAIN_TIMEOUT to CLOSESPIDER_TIMEOUT
- CLOSEDOMAIN_ITEMCOUNT to CLOSESPIDER_ITEMCOUNT
Removed deprecated SCRAPYSETTINGS_MODULE environment variable - use SCRAPY_SETTINGS_MODULE instead (:rev:`1840`)
System Message: ERROR/3 (<stdin>, line 4563); backlink
Unknown interpreted text role "rev".
Renamed setting: REQUESTS_PER_DOMAIN to CONCURRENT_REQUESTS_PER_SPIDER (:rev:`1830`, :rev:`1844`)
System Message: ERROR/3 (<stdin>, line 4564); backlink
Unknown interpreted text role "rev".
System Message: ERROR/3 (<stdin>, line 4564); backlink
Unknown interpreted text role "rev".
Renamed setting: CONCURRENT_DOMAINS to CONCURRENT_SPIDERS (:rev:`1830`)
System Message: ERROR/3 (<stdin>, line 4565); backlink
Unknown interpreted text role "rev".
Refactored HTTP Cache middleware
HTTP Cache middleware has been heavilty refactored, retaining the same functionality except for the domain sectorization which was removed. (:rev:`1843` )
System Message: ERROR/3 (<stdin>, line 4567); backlink
Unknown interpreted text role "rev".
Renamed exception: DontCloseDomain to DontCloseSpider (:rev:`1859` | #120)
System Message: ERROR/3 (<stdin>, line 4568); backlink
Unknown interpreted text role "rev".
Renamed extension: DelayedCloseDomain to SpiderCloseDelay (:rev:`1861` | #121)
System Message: ERROR/3 (<stdin>, line 4569); backlink
Unknown interpreted text role "rev".
Removed obsolete scrapy.utils.markup.remove_escape_chars function - use scrapy.utils.markup.replace_escape_chars instead (:rev:`1865`)
System Message: ERROR/3 (<stdin>, line 4570); backlink
Unknown interpreted text role "rev".
Scrapy 0.7
First release of Scrapy.