Andrey Rakhmatullin
1ddcb568e2
Add send_catch_log_async().
2025-05-15 15:45:55 +05:00
Andrey Rakhmatullin
82acef3051
Add AsyncCrawlerRunner. ( #6796 )
2025-05-14 16:21:18 +02:00
Andrey Rakhmatullin
b86f00327a
Refactor more Deferred functions. ( #6795 )
2025-05-13 20:47:57 +02:00
Felipe Benevolo
128cb551eb
refactor tests/test_downloadermiddleware_httpcache.py ( #6769 )
2025-05-12 13:04:34 +02:00
Adrián Chaves
036f3e5627
Support asynchronous start requests ( #6729 )
2025-05-07 19:04:03 +02:00
Andrey Rakhmatullin
2a1edbd473
Remove usages of TestCase._wait(). ( #6773 )
2025-05-05 09:44:17 +02:00
Andrey Rakhmatullin
ff1ac75c9e
Fix shutdown tests. ( #6772 )
2025-05-05 09:37:38 +02:00
Andrey Rakhmatullin
5dfe7cd7b8
Improve tests for start items. ( #6770 )
2025-05-05 09:36:52 +02:00
Andrey Rakhmatullin
da9078c4bb
Add tests for raising CloseSpider in callbacks.
2025-05-01 23:12:39 +05:00
Andrey Rakhmatullin
23c206af35
Improve test coverage of Scraper.
2025-05-01 22:59:18 +05:00
Andrey Rakhmatullin
eced5ca2d3
Remove the unnecessary spider argument from Scraper and related code.
2025-04-30 00:57:44 +05:00
Andrey Rakhmatullin
daf9db72b2
Base class for universal spider middlewares ( #6693 )
...
* Initial BaseSpiderMiddleware.
* Rename the new methods.
* Remove the spider argument from new BaseSpiderMiddleware methods.
* Add docs for BaseSpiderMiddleware.
* Silence pylint.
* Add BaseSpiderMiddleware tests.
* Add a release note.
2025-04-23 19:29:04 +05:00
Andrey Rakhmatullin
9f99da8f86
Convert test_downloadermiddleware_robotstxt.py from callbacks to awaits. ( #6743 )
2025-03-24 09:26:25 +01:00
Mehraz Hossain Rumman
3ca882fba8
Syntax Error Fixed ( #6738 )
...
* Syntax error fix issue #6731
* test case added
* extra logic removed
* mock spider fixture
* Update scrapy/utils/misc.py
Co-authored-by: Adrián Chaves <adrian@chaves.gal>
* settings.rst updated
* settings.rst updated
* settings.rst updated
---------
Co-authored-by: Adrián Chaves <adrian@chaves.gal>
2025-03-20 17:02:10 +05:00
Laerte Pereira
2ee01efe49
feat: Add count to spider_exceptions stats ( #6740 )
...
* feat: Add overall exception_count to spider_exceptions stats
* Remove variable
* Update test_closespider.py
* Update test_closespider.py
* Rename exception_count → count
2025-03-20 15:49:44 +05:00
Andrey Rakhmatullin
fc566a7ff9
Don't install the reactor in is_asyncio_reactor_installed(). ( #6732 )
2025-03-14 20:46:17 +01:00
Andrey Rakhmatullin
d0dabbc097
Enable AsyncioSelectorReactor by default. ( #6713 )
...
* Enable AsyncioSelectorReactor by default.
* Improve get_crawler(), switch more tests to it.
* Fix the remaining default-reactor test failures.
* Address documentation feedback.
* Make pinned envs more consistent.
2025-03-12 01:18:30 +05:00
Andrey Rakhmatullin
eb654aa1a8
Convert remaining unittest assert* calls, use the tmp_path fixture. ( #6725 )
2025-03-11 18:00:36 +01:00
Adrián Chaves
5a0690c89d
Remove or post-pone the use of itemadapter.is_item, as a potentially expensive call ( #6719 )
2025-03-11 14:52:48 +01:00
Andrey Rakhmatullin
0bbfca6c1d
Better fix for test_non_pickable_object on Windows.
2025-03-10 13:15:28 +05:00
Andrey Rakhmatullin
7bbe775040
Converting tests to plain asserts, part 5. ( #6712 )
2025-03-09 20:24:45 +01:00
Andrey Rakhmatullin
d442227fa7
Converting tests to plain asserts, part 8. ( #6711 )
2025-03-09 20:24:12 +01:00
Andrey Rakhmatullin
380c2279b9
Converting tests to plain asserts, part 7. ( #6710 )
2025-03-09 20:23:51 +01:00
Andrey Rakhmatullin
02ed71d887
Converting tests to plain asserts, part 6. ( #6709 )
2025-03-09 20:20:24 +01:00
Mehraz Hossain Rumman
044c3f69ed
Deprecate InitSpider ( #6714 )
2025-03-09 20:18:57 +01:00
Andrey Rakhmatullin
1469b2739e
Drop tests/test_loader_deprecated.py. ( #6704 )
2025-03-08 17:50:54 +01:00
Andrey Rakhmatullin
40833afc86
Work around a queuelib test file close problem. ( #6703 )
2025-03-07 19:33:41 +01:00
Andrey Rakhmatullin
3ded1dfe31
Converting tests to plain asserts, part 4. ( #6702 )
2025-03-07 17:25:15 +01:00
Andrey Rakhmatullin
5a605969bd
Converting tests to plain asserts, part 2. ( #6699 )
2025-03-06 20:52:41 +01:00
Andrey Rakhmatullin
1843a4f753
Converting tests to plain asserts, part 3. ( #6700 )
2025-03-06 20:50:14 +01:00
Andrey Rakhmatullin
35212ec5b0
Merge pull request #6696 from wRAR/deprecate-test-utils
...
Move most of the test utils inside tests.
2025-03-05 22:07:15 +05:00
Adrián Chaves
0c9200094e
Extend BaseSettings with utils for add-ons ( #6614 )
2025-03-05 10:31:59 +01:00
Andrey Rakhmatullin
d161d1d47d
Convert tests/test_utils* to plain asserts. ( #6695 )
2025-03-04 09:31:26 +01:00
Andrey Rakhmatullin
a5731c1944
Move most of the test utils inside tests.
2025-03-02 21:04:12 +05:00
Andrey Rakhmatullin
8d92c28a16
Switch to pytest.raises(). ( #6680 )
...
* Switch to pytest.raises().
* Add matches= to broad pytest.raises().
* Adjust the test_nonserializable_object() regex for Python <= 3.11.
* Adjust the test_nonserializable_object() regex for PyPy.
* Adjust other test exception regexes for PyPy.
* Cleanup.
2025-02-27 23:13:04 +05:00
Andrey Rakhmatullin
391af6afcc
Unknown encoding handling in HttpCompressionMiddleware, restore x-gzip support ( #6618 )
...
* Unknown encoding handling in HttpCompressionMiddleware.
* Implement the changes for unknown encoding handling.
* Restore support for Content-Encoding: x-gzip.
* Simplify the decoding logic.
* Add tests for the unsupported encoding warning.
* Add a test for the "no zstandard" warning.
2025-02-27 22:37:01 +05:00
Matt Winter
8c34e6d9a4
curl: add support for parsing -b,--cookie ( #6684 )
2025-02-19 10:17:37 +01:00
Andrey Rakhmatullin
a898331d14
Preparations for switching to direct pytest. ( #6678 )
2025-02-16 20:28:58 +01:00
Andrey Rakhmatullin
7d5b189c11
Fix getting annotations for _parse_sitemap() at the runtime. ( #6671 )
...
* Fix getting annotations for _parse_sitemap() at the runtime.
* Split off the callback annotations test.
2025-02-14 20:40:06 +05:00
Andrey Rakhmatullin
d8978d405c
Improve diagnostics for sync-only spider middlewares.
2025-02-09 01:33:27 +05:00
Andrey Rakhmatullin
cc480680d7
Merge pull request #6650 from wRAR/cleanup-cache-tests
...
Remove a duplicate test.
2025-02-03 23:33:07 +04:00
Andrey Rakhmatullin
ba5df629a2
Refactor downloader tests ( #6647 )
...
* Make download handler test base classes abstract.
* Small cleanup.
* Don't run the full test suite for special HTTP cases.
* Don't run tests in imported base classes.
* Remove an obsolete service_identity check.
* Move FTP imports back to the top level.
* Simplify the H2DownloadHandler import.
* Forbig pytest 8.2.x.
* Revert "Simplify the H2DownloadHandler import."
This reverts commit ed187046ac .
2025-02-03 20:11:47 +05:00
Andrey Rakhmatullin
4842bcbf1d
Deprecate and disable escape_ajax().
2025-02-03 14:08:05 +05:00
Andrey Rakhmatullin
393ff96e45
Deprecate AjaxCrawlMiddleware.
2025-02-03 14:08:05 +05:00
Mikhail Korobov
b4c2531021
Merge pull request #6648 from wRAR/mockserver-calls
...
Optimize mockserver calls
2025-02-03 14:06:35 +05:00
Andrey Rakhmatullin
df688910e0
Remove a duplicate test.
2025-02-02 18:48:26 +05:00
Andrey Rakhmatullin
783b98deda
Make mockserver instances per-class.
2025-02-02 14:10:09 +05:00
Andrey Rakhmatullin
1a0dfbd32e
Reuse mockserver instances in test_feedexport.py.
2025-02-02 13:28:34 +05:00
Andrey Rakhmatullin
200d76afa9
Refactor EngineTest tests.
2025-02-01 16:07:55 +05:00
Andrey Rakhmatullin
0a80871c3a
Remove scrapy.core.downloader.webclient._parse().
2025-01-28 22:22:09 +05:00
Andrey Rakhmatullin
0d2d2892ba
Silence the readBody warning.
2025-01-28 02:08:49 +05:00
Andrey Rakhmatullin
bc1aeeefc9
Deprecate overriding ScrapyClientContextFactory.getContext().
2025-01-28 02:07:47 +05:00
Andrey Rakhmatullin
16b998f9ca
Sort out webclient tests.
2025-01-28 01:35:04 +05:00
Lidiane T
98a57e2418
Fix error when running `scrapy bench` ( #6633 )
2025-01-27 11:21:30 +01:00
Andrey Rakhmatullin
cec0aeca58
Bump ruff, switch from black to ruff-format ( #6631 )
2025-01-27 11:07:09 +01:00
anubhav
c03fb2abb8
fix: added feed_options as a keyword argument to GCSFeedStorage. ( #6628 )
2025-01-23 21:06:45 +05:00
Andrey Rakhmatullin
499b6c66b4
Merge pull request #6626 from Laerte/master
...
fix: test_s3_export fails with boto3 >= 1.36.0
2025-01-22 15:14:33 +04:00
guillermo-bondonno
9bc0029d27
Allow updating pre-crawler settings from add-ons ( #6568 )
2025-01-22 12:07:44 +01:00
Laerte Pereira
14219b1fca
fix: test_s3_export fails with boto3 >= 1.36.0
2025-01-22 07:16:22 -03:00
anubhav
ca345a3b73
Flexible severity of logging level when items are dropped ( #6608 )
2025-01-15 11:08:18 +01:00
anubhav
1c1e83895c
Fix _pop_command_name ( #6606 )
2025-01-14 16:40:24 +01:00
Adrián Chaves
98ba61256d
Deprecate BaseDupeFilter.log() and improve dupefilter docs ( #4151 )
...
* Remove BaseDupeFilter.log()
It is never called because request_seen() always returns False
* Document the interface of DUPEFILTER_CLASS classes
* Remove unnecessary BaseDupeFilter comments and add a short class description
* Improve the documentation related to the DUPEFILTER_CLASS setting
* Deprecate BaseDupeFilter.log
* Update the docs
* Fix the new code example
* Remove typing to keep the example short
Otherwise, it would have required yet another import line (from __future__ or typing).
---------
Co-authored-by: Andrey Rakhmatullin <wrar@wrar.name>
2025-01-14 19:36:56 +05:00
Ionut-Cezar Ciubotariu
402500b164
Change unknown cmd message when outside project ( #3426 )
...
* Change unknown cmd message when outside project
* Simplification.
* Move the import to the top level.
* Reword the message.
---------
Co-authored-by: Andrey Rakhmatullin <wrar@wrar.name>
2025-01-10 23:08:27 +05:00
Kevin Lloyd Bernal
1fc91bb462
new `allow_offsite` parameter in OffsiteMiddleware ( #6151 )
...
* new 'allow_offsite' parameter in OffsiteMiddleware
* document deprecated dont_filter flag in OffsiteMiddleware
* avoid deprecating dont_filter in OffsiteMiddleware
* Copy the code to the downloader mw.
* Add tests for allow_offsite in the downloader mw.
* Mark allow_offsite with reqmeta.
---------
Co-authored-by: Andrey Rakhmatullin <wrar@wrar.name>
2025-01-08 21:28:51 +05:00
Andrey Rakhmatullin
7dfbecd392
Fix tracking of coverage in subprocesses.
2025-01-07 20:41:48 +05:00
Andrey Rakhmatullin
4d31277bc6
Explicitly mark re-exports. ( #6579 )
2025-01-02 23:48:14 +01:00
Andrey Rakhmatullin
c330a399dc
Merge pull request #6601 from wRAR/ruff-rules-5
...
Add more Ruff rules, do some pylint cleanups
2025-01-02 17:38:15 +04:00
Andrey Rakhmatullin
176ae348c5
Reformat long REFERRER_POLICY.
2025-01-02 18:14:18 +05:00
Andrey Rakhmatullin
6ae5b92671
Drop the remaining unittest.main() blocks. ( #6602 )
2025-01-02 12:45:04 +01:00
Arthur
b10d46d280
Fix the calculate_final_stats method ( #6599 )
2025-01-02 12:36:28 +01:00
Andrey Rakhmatullin
dc706d4fc3
Remove useless pylint: disable lines.
2025-01-02 12:32:25 +05:00
Andrey Rakhmatullin
b70443f2d0
Split ruff and pylint ignores into two categories, some pylint cleanup.
2025-01-02 01:03:42 +05:00
Andrey Rakhmatullin
c87354cd46
Enable SIM Ruff rules.
2025-01-02 01:03:36 +05:00
Andrey Rakhmatullin
273620488c
Enable PTH Ruff rules.
2025-01-01 22:21:51 +05:00
Andrey Rakhmatullin
f44ca39fa2
Enable FLY Ruff rules.
2025-01-01 21:50:02 +05:00
Andrey Rakhmatullin
838ff99f37
Enable RUF Ruff rules.
2025-01-01 21:41:08 +05:00
Andrey Rakhmatullin
cc484efd43
Replace isort with the ruff isort rules.
2024-12-29 14:15:16 +05:00
Laerte Pereira
a195af304d
Deprecate w3lib objects importable from scrapy.utils.url ( #6586 )
2024-12-18 11:50:44 +05:00
Adrián Chaves
21b9ba717c
Allow customizing logged software versions ( #6582 )
...
Co-authored-by: Grammy Jiang <grammy.jiang@gmail.com>
Co-authored-by: Andrey Rakhmatullin <wrar@wrar.name>
2024-12-16 14:46:23 +01:00
Andrey Rakhmatullin
7dd92e6e43
Add pylint rules to ruff, refresh the ignore list of pylint itself ( #6584 )
2024-12-16 09:44:36 +01:00
Andrey Rakhmatullin
1e4c81e9dc
Add Perflint rules to ruff.
2024-12-12 21:03:34 +05:00
Andrey Rakhmatullin
c2832ed131
Add flake8-pyi rules to ruff.
2024-12-12 20:44:28 +05:00
Andrey Rakhmatullin
93644f2c30
Add flake8-pie rules to ruff.
2024-12-12 20:33:35 +05:00
Andrey Rakhmatullin
e7595837a6
Add flake8-raise rules to ruff.
2024-12-12 20:33:35 +05:00
Andrey Rakhmatullin
897e124a27
Add flake8-return rules to ruff.
2024-12-12 20:32:25 +05:00
Andrey Rakhmatullin
cde0845ab2
Ruff: migrate pyupgrade and bandit, enable some other rules ( #6577 )
2024-12-10 19:53:27 +01:00
Andrey Rakhmatullin
f4d8d6d8ac
Tidy up noqa comments.
2024-12-10 14:58:45 +05:00
Andrey Rakhmatullin
cc146b9df7
Add ruff with basic rules. ( #6565 )
2024-12-09 10:47:47 +01:00
Andrey Rakhmatullin
4dcc04be48
Add tests for DOWNLOADER_CLIENT_TLS_METHOD, remove dead code.
2024-11-24 12:44:48 +04:00
Swayam Gupta
8c23da943c
Integrating configs into pyproject.toml ( #6547 )
2024-11-19 19:21:15 +05:00
Adrián Chaves
10089c6fe2
2.12 release notes ( #6226 )
...
* Cover 2.12 in the release notes up to 9bb973dc54
* Add one more highlight
* Better merge of the news entries.
* Cover 2.12 in the release notes up to 642af40 .
* Cover 2.12 in the release notes up to 7a0a34b .
* Cover 2.12 in the release notes up to b4bad97 .
* Add not yet merged PRs #6463 , #6507 , #6511 to the 2.12 release notes.
* Cover 2.12 in the release notes up to d85c39f , small fixes.
* Cover 2.12 in the release notes up to d215669 .
* Cover #6527 in the release notes.
* Address PR feedback.
* Cover recent PRs.
* Finalize the 2.12.0 release notes, small additional fixes.
---------
Co-authored-by: Andrey Rakhmatullin <wrar@wrar.name>
2024-11-18 13:07:32 +05:00
Andrey Rakhmatullin
feea3a0f67
Commit mitmproxy-dhparam.pem.
2024-11-15 21:08:18 +05:00
Nicholas Laustrup
bfcee452b0
Added failing test cases to tests/test_contracts.py and fixed corresponding methods + removed pylint comments
2024-11-14 10:40:12 -08:00
Andrey Rakhmatullin
ab5cb7c7d9
Merge pull request #6540 from wRAR/build_from_settings
...
Remove build_from_settings() and deprecate from_settings() code
2024-11-14 20:40:54 +05:00
Andrey Rakhmatullin
6aa4d2b4ab
Prefer crawler.settings over settings in media pipelines.
2024-11-14 02:03:43 +05:00
Andrey Rakhmatullin
28fafbb8c5
Modernize the media pipeline initialization API.
2024-11-14 01:29:51 +05:00
Andrey Rakhmatullin
8700a5b7a9
Deprecate build_from_crawler() calling from_settings().
2024-11-13 00:20:10 +05:00
Andrey Rakhmatullin
499e7e8aa6
Add from_crawler() to components that only had from_settings().
2024-11-12 21:12:32 +05:00
Andrey Rakhmatullin
f796d8780c
Add tests for MediaPipeline.from_crawler() and related code.
2024-11-12 21:08:04 +05:00
Andrey Rakhmatullin
eda3a89b3f
Remove build_from_settings().
2024-11-11 16:44:47 +05:00
Andrey Rakhmatullin
b042ad255d
Address some previously ignored pylint messages. ( #6531 )
2024-11-11 11:49:52 +01:00
Mikhail Korobov
bcef96570b
Merge pull request #6527 from Gallaecio/dont-throttle-meta
...
Replace Slot.throttle with Request.meta['dont_throttle']
2024-11-08 14:25:37 +05:00
Adrián Chaves
2a4b7fe0f8
dont_throttle → autothrottle_dont_adjust_delay
2024-11-07 16:17:16 +01:00
Adrián Chaves
f57fc454be
Replace Slot.throttle with Request.meta['dont_throttle']
2024-11-05 19:44:30 +01:00
Rohit Kumar Singh
d2156696c4
Deprecate unused scrapy utils ( #6519 )
...
* Added deprecation warnings for unused Scrapy.utils
* Grammatical corrections
* Exceptions class connected
* Deprecation of ScrapyJSONDecoder
* request_authenticate function deprecation
* Making all warning similar
* Added ignore statements for deprecation warning in tests
* Missing stacklevel attr. added
* Added Deprecation message
2024-11-04 21:09:45 +05:00
Andrey Rakhmatullin
ce5a132f12
Run and fix linkcheck. ( #6524 )
2024-11-04 11:40:07 +01:00
Andrey Rakhmatullin
d85c39f5bc
Deprecation removals. ( #6500 )
...
* Deprecation removals.
* Clean up the default pytest filterwarnings.
* Remove test_get_images_old().
* Redo boto-requiring test filtering.
* Remove an unused function.
* Improve the Crawler.crawl() error message.
* Fix the test.
2024-10-31 18:06:22 +05:00
Laerte Pereira
d2bdbad8c8
Deprecate `scrapy.twisted_version` ( #6512 )
...
* Deprecate scrapy.twisted_version
* fix: typing
* remove typing
* raise default exception if attribute is not found
* remove redudant ()
* add tests
* rollback exception raised
* add filterwarnings again
* change order
* lint
2024-10-30 00:28:35 +05:00
Andrey Rakhmatullin
fcb5ab6cff
Remove code for unsupported Twisted. ( #6510 )
2024-10-29 10:21:07 +01:00
Andrey Rakhmatullin
fffacb9dac
Merge remote-tracking branch 'origin/master' into py313
2024-10-22 19:07:10 +05:00
Andrey Rakhmatullin
04d0411bf7
Filter test-time warnings. ( #6501 )
2024-10-21 12:30:49 +02:00
Andrey Rakhmatullin
5759b3f0f2
Drop Reppy.
2024-10-17 23:41:23 +05:00
Andrey Rakhmatullin
7e07d48cc5
Small 3.7 and 3.8 cleanup.
2024-10-17 23:22:37 +05:00
Andrey Rakhmatullin
c9095ef927
Remove --keep-runtime-typing from pyupgrade.
2024-10-17 21:26:02 +05:00
Andrey Rakhmatullin
845b1ffd44
Merge remote-tracking branch 'origin/master' into py313
2024-10-16 14:50:12 +05:00
Vsevolod Breus
5391663072
Drop Python 3.8 Support ( #6472 )
2024-10-16 10:03:16 +02:00
mmoriniere
46cddc6ecf
Ignore SyntaxError as well when SPIDER_LOADER_WARN_ONLY is set to True ( #6484 )
2024-10-02 10:04:03 +02:00
Andrey Rakhmatullin
e139d22db9
Fix expectations for get_func_args() on 3.13.
2024-09-20 19:28:28 +05:00
LucasSD
f260f819e0
Remove debug log message from _schedule_request method
2024-09-09 20:26:02 +01:00
Laerte Pereira
b85e5a66ed
Add support for meta in Spider Contracts
2024-08-26 23:21:09 -03:00
Georgiy Zatserklianyi
6ce0342beb
Allow yielding items from start_requests ( #6417 )
...
Co-authored-by: Georgiy Zatserklianyi <george.zatseklyany@gmail.com>
Co-authored-by: Adrián Chaves <adrian@chaves.io>
Co-authored-by: Andrey Rakhmatullin <wrar@wrar.name>
2024-08-26 20:53:06 +02:00
guillermo-bondonno
9cdbcb4f63
add test_closespider_pagecount_no_item_with_pagecount
2024-07-11 14:02:24 -03:00
guillermo-bondonno
5f0fad16f5
improve test_closespider_pagecount_no_item and corresponding test spider
2024-07-11 13:26:22 -03:00
guillermo-bondonno
a40d5281cf
improve test_closespider_pagecount_no_item and MaxItemsSpider
2024-07-11 11:14:30 -03:00
guillermo-bondonno
d6352f9f66
refactor changes on closespider.py and improve test
2024-07-10 11:03:01 -03:00
guillermo-bondonno
a44818afea
restore mitmproxy-dhparam
2024-07-09 16:07:55 -03:00
guillermo-bondonno
0b8604bb5d
add CLOSESPIDER_PAGECOUNT_NO_ITEM to CloseSpider extension
2024-07-09 15:52:49 -03:00
Andrey Rakhmatullin
ceedb026f8
Remove top-level imports that install the reactor from scrapy.extensions.telnet. ( #6432 )
2024-07-09 08:34:58 +02:00
Andrey Rakhmatullin
d08f559600
Add flake8-type-checking. ( #6413 )
2024-06-25 10:20:59 +02:00
Andrey Rakhmatullin
3d8dbd5648
flake8-bugbear
2024-06-20 00:27:38 +05:00
Andrey Rakhmatullin
1ef9c337ca
flake8-docstrings
2024-06-19 23:57:40 +05:00
Andrey Rakhmatullin
1c70d3e605
flake8-comprehensions
2024-06-19 23:36:36 +05:00
Andrey Rakhmatullin
1282ddf8f7
Add parameters to most Deferred in scrapy/core. ( #6395 )
2024-06-10 10:27:50 +02:00
Andrey Rakhmatullin
ddc98fe91b
Deprecate scrapy.utils.defer.process_chain_both(). ( #6397 )
2024-06-10 10:16:26 +02:00
Andrey Rakhmatullin
5850b8f3e6
Merge branch 'master' into pyupgrade
2024-06-07 11:20:31 +05:00
Andrey Rakhmatullin
feb0b8f7dc
Add pyupgrade.
2024-06-05 22:57:18 +05:00
Andrey Rakhmatullin
2e214210f6
Add parameters to iterable generics, replace generators with iterables.
2024-06-05 21:44:04 +05:00
Suvan Banerjee
3f76853bd2
Handle AttributeError: 'NoneType' in contract parsing ( #6388 )
2024-06-05 06:34:46 +02:00
Andrey Rakhmatullin
492c3bce9d
Don't run callbacks of requests from get_media_requests(). ( #6386 )
2024-06-03 13:28:20 +02:00
Fabian Schneebauer
0d58af8697
Add support for multiple referer policy tokens.
2024-05-29 10:59:32 +02:00
Sanchay Kumar
cadb0dd707
Fix overridable methods in MediaPipeline ( #6368 )
2024-05-28 10:42:58 +02:00
Laerte Pereira
2facdd4fb0
Add change reactor test to CrawlerRunner
2024-05-26 19:55:54 -03:00
Andrey Rakhmatullin
631fc65fad
Update expectations of cookies after redirects. ( #6367 )
2024-05-16 16:42:09 +02:00
Adrián Chaves
812fd2368f
Allow user-defined secure cookies ( #6357 )
2024-05-15 11:48:43 +02:00
Adrián Chaves
d2f1e00a6a
Merge 2.11.2 changes ( #6363 )
2024-05-14 18:54:11 +02:00
Bagaudin Magomedov
b88f22c6c5
Add SpiderLoggerAdapter, change Spider.logger to return SpiderLoggerAdapter ( #6324 )
2024-05-13 14:33:24 +02:00
Sanchay Kumar
c9ef520936
Add Downloader.get_slot_key() without a spider parameter ( #6352 )
2024-05-10 14:26:45 +02:00
aisha-partha
180bc9bad7
Closes #6342 . Setting METAREFRESH_IGNORE_TAGS to [‘noscript’] by default
2024-05-08 22:06:46 +05:30
Andrey Rakhmatullin
a5da77d01d
Merge pull request #6221 from jxlil/fix/LxmlLinkExtractor
...
fix: LxmlLinkExtractor unique_list missing key
2024-04-19 19:57:11 +05:00
kokobhara
b1fe97dc6c
Fix test expectations ( #6316 )
2024-04-17 13:14:57 +02:00
Víctor Ruiz
48c5a8c98f
Fix WrappedRequest.get_header raising TypeError if default is None ( #6310 )
2024-04-08 11:47:53 +02:00
Andrey Rakhmatullin
5d31e89262
Merge pull request #6298 from lorenzoverardo/bug-6292/robots.txt-non-UTF-8
...
Handle robots.txt files not UTF-8 encoded
2024-04-05 13:49:10 +05:00
Lorenzo Verardo
7b37dcd80d
Handle robots.txt files not UTF-8 encoded
2024-04-04 12:22:50 +02:00
igeni
f7bf3f726e
modified string's concat to f-strings ( #6296 )
2024-04-01 15:37:23 +02:00
Andrey Rakhmatullin
8d917c0b55
Run black.
2024-03-14 17:44:57 +05:00
Andrey Rakhmatullin
5bf0e1d1db
Merge branch 'master' into master
2024-03-14 17:38:30 +05:00
Andrey Rakhmatullin
7255dfd41f
Merge pull request #6231 from elramen/check_command_tests
...
Added tests for check command
2024-03-14 15:28:19 +05:00
Lucas Belo
4460d3ed96
Remove tests/requirements.txt and refactor extra deps ( #6272 )
...
Co-authored-by: lucasbelo777 <lucas.belo@cialdnb.com>
2024-03-13 07:22:48 +01:00
Andrey Rakhmatullin
95a70d3fa0
Merge pull request #6290 from Gallaecio/fix-skips
...
Fix WindowsRunSpiderCommandTest skip outside Windows for older Twisted
2024-03-12 14:17:10 +05:00
Adrián Chaves
d7581c6b41
Allow disabling the AutoThrottle extension for a given slot ( #6246 )
2024-03-12 09:44:29 +01:00
Adrián Chaves
e72de11f55
Add super
2024-03-12 09:29:10 +01:00
Adrián Chaves
188d9a8bb3
Remove unnecessary comment
2024-03-11 23:28:57 +01:00
Adrián Chaves
ab5ea32ffd
Fix WindowsRunSpiderCommandTest skip outside Windows for older Twisted.
2024-03-11 23:26:19 +01:00
pengqiseven
6e84648c07
Fix some comments ( #6285 )
...
Signed-off-by: pengqiseven <i@sohu.com>
Co-authored-by: pengqiseven <i@sohu.com>
2024-03-11 10:03:06 +01:00
Laerte Pereira
532cd2eabd
Use brotlicffi for PyPy
2024-03-05 21:30:20 -03:00
Laerte Pereira
cab1016bb6
Add brotlicffi support
2024-03-05 20:24:17 -03:00
Andrey Rakhmatullin
1311e7db05
Regenerate the expired mitmproxy-ca.pem.
2024-02-29 16:31:06 +05:00
Laerte Pereira
2169810414
fix: Proxy tests don't use custom certificate authority
2024-02-29 06:41:14 -03:00
Laerte Pereira
26a16f2c43
Fix tests
2024-02-28 16:36:19 -03:00
Andrey Rakhmatullin
4f9dd998dc
Bump pylint, cleanup the ignored tags.
2024-02-28 14:31:21 +05:00
Andrey Rakhmatullin
282767f23b
Bump black.
2024-02-28 14:30:38 +05:00
Adrián Chaves
2d46b4acf5
Complete coverage for the AutoThrottle extension ( #6245 )
2024-02-27 09:28:02 +01:00
Jon
b0ef9a89a1
Remove usage of deprecated mktemp ( #5285 )
2024-02-26 19:53:06 +01:00
vishesh10
e208f82076
Add support for multiple-compressed responses ( #6063 )
2024-02-22 12:16:24 +01:00
Andrey Rakhmatullin
ebd7e199f0
Merge pull request #6235 from elramen/http_request_tests
...
Added tests for form.py
2024-02-22 12:17:11 +05:00
Andrey Rakhmatullin
edd7ba1c06
Merge pull request #6236 from elramen/json_request_tests_main
...
Improve json_request.py coverage
2024-02-22 12:16:47 +05:00
Can Kupeli
c513e7d6e5
implemented tests for branch coverage for function printSummary
2024-02-21 23:52:35 +01:00
noon
877398a3de
refactor #3 Remove inner class in form test
2024-02-21 21:13:57 +01:00
noon
b7a7ae7dbb
refactor #22 Change comment and warning catching
2024-02-21 21:04:45 +01:00
Andrey Rakhmatullin
f798118ac2
Merge pull request #6232 from elramen/linkextractor_tests
...
Added tests for LxmlLinkExtractor
2024-02-21 23:03:20 +05:00
Elias Ram
f19045403a
test #8 made tests cleaner
2024-02-21 16:03:51 +01:00
Adrián Chaves
6fc7827042
Do not close the underlying file from compression plugins ( #6239 )
2024-02-21 14:27:42 +01:00
noon
bc036542a8
refactor #3 Moved tests to FormRequestTest
2024-02-21 02:35:45 +01:00
noon
12b4417c56
test #22 Improve json_request.py coverage
2024-02-21 02:30:50 +01:00
noon
e2a0c85f11
doc #3 Clarified test comments
2024-02-21 02:21:24 +01:00
noon
e27d320c3c
test #3 Increased branch coverage for form.py
2024-02-20 23:58:39 +01:00
Elias Ram
e8e6d28479
test #8 added tests for LxmlLinkExtractor
2024-02-20 20:41:18 +01:00
Elias Ram
f096f17fa4
test #6 added tests for check command
2024-02-20 20:32:02 +01:00
Laerte Pereira
ee1189512f
Replace urlparse with urlparse_cached where possible ( #6229 )
2024-02-20 12:47:29 +01:00
Adrián Chaves
5e51417a48
Add tests, fix canonicalize passing
2024-02-16 20:10:52 +01:00
Kevin Lloyd Bernal
9bb973dc54
Refactor LogStats extension to log IPM and RPM to stats on spider_close ( #4111 )
2024-02-16 12:25:38 +01:00
Adrián Chaves
6bd45bb6d9
Merge remote-tracking branch 'scrapy/2.11' into 2.11-port
2024-02-15 06:39:50 +01:00
Adrián Chaves
2f1d345e74
Solve test issues
2024-02-14 18:59:01 +01:00
Adrián Chaves
479619b340
Merge branch '2.11-redos' into 2.11
2024-02-14 17:18:26 +01:00
Adrián Chaves
809bfac489
Merge branch '2.11-compression-bomb' into 2.11
2024-02-14 17:16:25 +01:00
Adrián Chaves
5bcb8fd501
Merge branch '2.11-authorization' into 2.11
2024-02-14 17:14:29 +01:00
Adrián Chaves
c5dad41190
Speed up tests, remove comments without regexps
2024-02-02 14:03:16 +01:00
Laerte Pereira
7001193c80
Simplify the logic
2024-01-31 12:53:08 -03:00
Laerte Pereira
24634f1bb2
Attend PR comments
2024-01-31 12:29:43 -03:00
Laerte Pereira
019443dd57
Remove settings from default implementation test
2024-01-31 10:08:07 -03:00
Laerte Pereira
2487e3cc03
Cleanup deprecated fingerprint code in scrapy.utils.request
2024-01-31 10:05:50 -03:00
Andrey Rakhmatullin
09a7efef7c
Remove a defer.returnValue call.
2024-01-15 18:19:29 +04:00
Adrián Chaves
e8dadb9592
scrapy parse: fix the signature of callbacks from the CLI ( #6182 )
2024-01-15 13:37:03 +01:00
Adrián Chaves
fa0c598096
Add component getters to Crawler ( #6181 )
2024-01-15 13:14:02 +01:00
Mikhail Korobov
8ad17f7476
Merge pull request #6199 from Rotzbua/fix_flake8
...
fix(flake8): lint errors
2024-01-12 22:52:22 +05:00
Andrey Rakhmatullin
c2baf4d0da
Remove a defer.returnValue call.
2024-01-12 18:30:41 +04:00
Andrey Rakhmatullin
becff65ccb
Merge pull request #6201 from wRAR/more-mitmproxy
...
Fix and re-enable newer mitmproxy usage in tests.
2024-01-12 14:26:39 +04:00
Mikhail Korobov
32fda2dc53
Merge pull request #6196 from Rotzbua/fix_typo
...
fix(typo): correct `successfully`
2024-01-12 00:36:16 +05:00
Andrey Rakhmatullin
68fccb1d58
Fix and re-enable newer mitmproxy usage in tests.
2024-01-06 01:35:56 +04:00
Rotzbua
745b8412f6
fix(flake8): lint errors
...
E226 missing whitespace around arithmetic operator
E201 whitespace after '{'
2024-01-05 14:54:00 +01:00
Rotzbua
0d445a3224
refactor(yield): use `yield from` syntax
2024-01-05 12:30:10 +01:00
Rotzbua
c7b2b097b1
fix(typo): correct `successfully`
2024-01-05 10:50:45 +01:00
Adrián Chaves
0e78acb657
MediaPipeline: log media_to_download errors before stripping them ( #5068 )
2023-12-21 21:01:07 +01:00
Jalil SA
d25cfe5315
Add JsonResponse ( #6174 )
2023-12-21 10:36:21 +01:00
Swati Anshu
c67f730695
create_instance → build_from_crawler, build_from_settings ( #6169 )
2023-12-18 11:51:02 +01:00
Adrián Chaves
27781a85e7
Fix bad closing tags in XMLFeedSpider tests
2023-12-15 13:52:12 +01:00
Adrián Chaves
cd6846b763
Merge remote-tracking branch 'scrapy/2.11' into 2.11-redos
2023-12-15 11:52:35 +01:00
Adrián Chaves
150d96764b
Deprecate xmliter in favor of xmliter_lxml
2023-12-15 11:42:55 +01:00
Adrián Chaves
9655b0b8eb
Mark slow tests, with their own tox env and CI job
2023-12-15 10:19:47 +01:00
Adrián Chaves
4f72b49f97
Fix namespaces nodename support for xmliter_lxml
2023-12-15 10:06:13 +01:00
Laerte Pereira
b9c4ee26d7
Remove deprecated scrapy.downloadermiddlewares.decompression
2023-12-13 13:28:30 +01:00
Adrián Chaves
1533b69032
Test and address ReDoS attack vectors for open_in_browser
2023-12-13 12:01:35 +01:00
Laerte Pereira
09ce0ef526
Remove test_download_gzip_response test
2023-11-23 10:50:46 -03:00
Adrián Chaves
03d9866518
Also use DOWNLOAD_WARNSIZE for decompressions
2023-11-23 10:26:47 +01:00
Adrián Chaves
e0b66c021a
Mind Spider.download_maxsize and Request.meta['download_maxsize']
2023-11-22 19:03:24 +01:00
Adrián Chaves
3fda2fe103
Protect against gzip bomb sitemaps
2023-11-22 18:34:37 +01:00
Adrián Chaves
9cc8703877
Protect against zstandard bombs
2023-11-22 17:53:00 +01:00
Adrián Chaves
fba167c5e1
Protect against brotli bombs
2023-11-22 17:32:09 +01:00
Adrián Chaves
0c4a98f8e0
Protect against deflate bombs
2023-11-22 17:12:43 +01:00
Adrián Chaves
0bf29a7b1b
Update test expectations
2023-11-22 16:10:50 +01:00
Adrián Chaves
6969041c5f
Protect against gzip bombs
2023-11-22 15:52:00 +01:00
Adrián Chaves
1c4e93293a
Merge remote-tracking branch 'scrapy/2.11' into 2.11-authorization
2023-11-17 15:42:08 +01:00
Adrián Chaves
1045856a50
Merge pull request #6112 from wRAR/test-shutdown-forced
...
Make shutdown tests more robust.
2023-11-16 19:16:52 +04:00
Andrey Rakhmatullin
5e4fb0bc5f
Re-enable uvloop tests on 3.12 ( #6098 )
2023-11-16 19:16:31 +04:00
Andrey Rakhmatullin
538192916f
Merge pull request #6064 from wRAR/signals-proper
...
Refactor installing signals.
2023-11-16 19:15:30 +04:00
Andrey Rakhmatullin
59cfdeaa5c
Merge pull request #6083 from wRAR/py3.12-release
...
Adapt to the Python 3.12 final release
2023-11-16 19:14:47 +04:00
Adrián Chaves
080fecd890
Drop the Authorization header on cross-domain redirect
2023-11-15 15:39:30 +01:00
Andrey Rakhmatullin
b4acf5c827
Fix and remove most of the entries from the mypy ignore list ( #6137 )
2023-11-07 09:34:35 +01:00
Jeesang Kim
dda6feb935
Improve assert readability ( #6132 )
2023-11-03 09:24:25 +01:00
Andrey Rakhmatullin
01d9d28324
Full typing for scrapy/http/response/__init__.py.
2023-11-01 01:10:32 +04:00
Chenwei Niu
1f797d0fdb
Removed some deprecated functions and functionalities ( #6116 )
2023-10-30 09:59:11 +01:00
Adrián Chaves
1d81585612
Merge pull request #6112 from wRAR/test-shutdown-forced
...
Make shutdown tests more robust.
2023-10-30 09:35:29 +01:00
Andrey Rakhmatullin
6b0c18e921
Improve signal sending in test_shutdown_forced.
2023-10-19 23:13:47 +04:00
Andrey Rakhmatullin
cc9c415bf3
Disable ipython for InteractiveShellTest.
2023-10-18 19:30:57 +04:00
Laerte Pereira
38dbd43993
Remove tests not necessary anymore
2023-10-18 06:29:47 -03:00
Laerte Pereira
644ab3af48
Remove support for feed storage backends without feed_options
2023-10-17 22:39:09 -03:00
Laerte Pereira
3db438127c
Remove support for HttpCompressionMiddleware subclasses without stats
2023-10-17 21:38:38 -03:00
Laerte Pereira
a2b9351f04
Remove support for using HttpAuthMiddleware without http_auth_domain
2023-10-17 20:20:38 -03:00
Laerte Pereira
2de95f1fc0
Remove leftover from _make_compatible removal
2023-10-17 19:44:12 -03:00
Laerte Pereira
ad4e8b64d4
fix test_spider_manager_verify_interface test
2023-10-17 18:58:27 -03:00
Laerte Pereira
aa0a425826
Remove deprecated code moved to itemloaders
2023-10-17 18:20:12 -03:00
Laerte Pereira
7a5cefbcfa
Remove deprecated scrapy.downloadermiddlewares.decompression
2023-10-17 17:49:22 -03:00
Andrey Rakhmatullin
2cb1e10c76
Make shutdown tests more robust.
2023-10-17 23:56:54 +04:00
Andrey Rakhmatullin
991121fa91
Re-enable uvloop tests on 3.12 ( #6098 )
2023-10-17 19:24:44 +02:00
Andrey Rakhmatullin
5807970a22
Add typing hints to CaselessDict and Headers. ( #6097 )
2023-10-17 19:07:13 +02:00
Andrey Rakhmatullin
029a56384d
Increase the timeout.
2023-10-09 00:16:41 +04:00
Andrey Rakhmatullin
9910ccf3ae
Merge remote-tracking branch 'origin/master' into signals-proper
2023-10-08 23:02:11 +04:00
Andrey Rakhmatullin
2f436c05e0
Use SIGBREAK in Windows tests.
2023-10-08 22:55:05 +04:00
Andrey Rakhmatullin
a338873e3a
Re-enable bpython on Python 3.12.
2023-10-03 16:50:52 +04:00
Andrey Rakhmatullin
fb4debda04
Use path_to_file_uri to fix the test on Windows.
2023-10-03 16:47:03 +04:00
Andrey Rakhmatullin
1ed9ed4f92
Require pyftpdlib that supports Python 3.12.
2023-10-02 21:33:02 +04:00
Andrey Rakhmatullin
eb5e2e79ba
Use SIGINT instead of SIGTERM to support Windows.
2023-09-24 23:31:46 +04:00
Andrey Rakhmatullin
4b5fb9b5a6
Add a test for SIGTERM handling.
2023-09-24 22:52:17 +04:00
Andrey Rakhmatullin
d19e315b0b
Add an interactive test for `scrapy shell`.
2023-09-24 21:51:19 +04:00
Andrey Rakhmatullin
922ff57384
Improve the backwards compatibility for RetryMiddleware.EXCEPTIONS_TO_RETRY.
2023-09-14 15:51:00 +04:00
Andrey Rakhmatullin
6428356584
Use twisted.python.log instead of failure.printTraceback().
2023-09-13 18:20:42 +04:00
Andrey Rakhmatullin
be0e33af92
Don't rely on unhandled exception logging in the expected to fail scripts.
2023-09-13 16:59:54 +04:00
Andrey Rakhmatullin
3756216339
Rename methods.
2023-09-13 15:47:22 +04:00
Andrey Rakhmatullin
619140717f
Fix the new addon test.
2023-09-13 15:33:51 +04:00
Andrey Rakhmatullin
028a56b9a2
Improve and simplify tests.
2023-09-13 14:17:41 +04:00
Andrey Rakhmatullin
62183dc25f
Merge branch 'master' into change-init-order
2023-09-12 22:16:21 +04:00
Andrey Rakhmatullin
77f39be407
Add integration tests for modifying settings via args.
2023-09-12 20:16:26 +04:00
Andrey Rakhmatullin
e26bf4f918
Pin brotli for PyPy tests ( #6045 )
2023-09-12 16:18:25 +02:00
Andrey Rakhmatullin
bb15c93a2b
Add Crawler._load_settings().
2023-09-12 14:44:16 +04:00
Andrey Rakhmatullin
6629a61dd9
Fix one more testcase.
2023-09-08 20:15:49 +04:00
Andrey Rakhmatullin
036d5836d0
Move more things from Crawler.__init__() to .crawl().
2023-09-08 19:29:05 +04:00
Andrey Rakhmatullin
97b98bf181
Roll back the update_settings() changes.
2023-09-07 17:02:37 +04:00
Maria Mitropoulou
721df895f9
Fix charset handling in MailSender #5096 ( #5118 )
2023-09-07 07:47:42 +02:00
Andrey Rakhmatullin
b4380995da
Merge remote-tracking branch 'origin/master' into change-init-order
2023-09-06 20:34:27 +04:00
Andrey Rakhmatullin
b39d2d4353
Add a test.
2023-09-06 19:44:22 +04:00
Andrey Rakhmatullin
d3b5c9be97
Deprecate running Crawler.crawl() twice.
2023-09-06 19:29:44 +04:00
Andrey Rakhmatullin
69282c5318
Merge branch 'master' into change-init-order
2023-09-05 19:23:36 +04:00
Víctor Ruiz
c1dd5493ac
Fix enabled addons not being logged ( #6036 )
2023-09-04 08:03:35 +02:00
Mikhail Korobov
0fcb0554d1
Merge pull request #6016 from jxlil/fix/response.json
...
Fix: response.json() call makes unnecessary memory allocation
2023-08-31 14:07:24 +05:00
Georgiy Zatserklianyi
1f03cb1419
Merge remote-tracking branch 'upstream/master' into periodic_log_2
2023-08-21 17:07:18 +03:00
Laerte Pereira
df2163ce6a
Remove datetime.utcnow() usage ( #6014 )
2023-08-21 15:51:49 +02:00
Jalil SA
fd4292b722
fix: test_cache_json_response
2023-08-17 10:24:34 -06:00
Laerte Pereira
b06936f111
Handle Tuple type on getdictorlist method, bump 3.12 python version
2023-08-14 10:33:48 -03:00
Andrey Rakhmatullin
34d050cfe5
Remove deprecated CrawlerRunner.spiders. ( #6010 )
2023-08-11 10:41:05 +02:00
Laerte Pereira
4a090d951a
Remove deprecated PythonItemExporter.binary ( #6007 )
2023-08-10 07:36:42 +02:00
Andrey Rakhmatullin
644a71bfd4
Use ftp:// URLs in FTP tests.
2023-08-07 00:17:52 +04:00
Andrey Rakhmatullin
471281d29e
Fixes for scrapy/utils/iterators.py typing.
2023-08-06 23:05:02 +04:00
Andrey Rakhmatullin
518e56046e
Check for async callbacks in contracts.
2023-08-06 17:28:34 +04:00
Andrey Rakhmatullin
d1f87e4f08
More typing for scrapy/utils/iterators.py.
2023-08-06 00:35:33 +04:00
Georgiy Zatserklianyi
e9b088f1fb
periodic_log: typing
2023-08-04 12:49:22 +03:00
Laerte Pereira
09c63a178b
Remove the deprecated spider parameter from the engine ( #5998 )
2023-08-04 07:53:04 +02:00
Laerte Pereira
b9c32a0cfd
Remove functions deprecated in 2.6.0 ( #5996 )
2023-08-03 17:06:55 +02:00
Andrey Rakhmatullin
9f9a2292e0
Deprecate the custom attribute of build_component_list(). ( #5993 )
2023-08-02 14:21:06 +02:00
Andrey Rakhmatullin
06ebdee35d
Merge pull request #5950 from wRAR/addons
...
Add-ons
2023-08-01 22:18:57 +04:00
Andrey Rakhmatullin
e58b8078f0
Improve NotConfigured handling when clspath is a class.
2023-08-01 20:20:15 +04:00