gendesign/tradein-mvp/backend/tests/fixtures/avito_imv_getdata.json
Light1YT 81bf7e6def fix(tradein-imv): harden Avito IMV anti-bot path + offline contract tests (#565)
Add warm-up GET /evaluation/realty + production browser header set (Sec-Fetch,
X-Requested-With, 25s timeout) mirroring avito.py, чтобы защитить 3-step IMV flow
от server-IP анти-бот 403. Refactor step B/C парсинга в pure helpers
(_parse_geo_position/_parse_price/_parse_placement_history/_parse_suggestions)
+ fixture-driven offline тесты из живых JSON-captures.

Честный диагноз: контракт (geoFieldsHash, price-блок, categoryId=24) НЕ менялся —
проверено живым capture'ом с этой машины (A→B→C, recommended 7.39M). Реальная
причина #565 — скорее анти-бот по PROD-IP, не код → если #565 останется после
deploy, настоящий фикс = ротация egress IP воркера (devops, отдельно).

code-reviewer:  APPROVE no critical — warm-up non-fatal, injected-session path
unchanged, refactor preserves shapes, graceful-None сохранён, fixtures без PII.
Tests: 12 new (27 total). Ruff clean.

Closes #565
2026-05-28 16:29:05 +05:00

157 lines
No EOL
7.2 KiB
JSON
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"itemParams": {
"categoryID": 24,
"rawParams": "{\"110688\":458589,\"110710\":472001,\"118593\":[1714472],\"496\":5123,\"497\":5190,\"498\":5245,\"499\":5254,\"549\":5697,\"578\":54}"
},
"placementHistory": {
"items": [
{
"exposure": 115,
"id": 7334693344,
"itemImage": "https://60.img.avito.st/image/1/1.pLl9lba3CFBbN2agdtqcl8k2CFrDpgs-yzY.knU6Ae7h8FdvPtmtqDIsoCetYbBMeBNHHd7Z3Mu4ct0",
"lastPrice": 6800000,
"lastPriceDate": 1755648000,
"removedDate": 1756077885,
"startPrice": 7000000,
"startPriceDate": 1745712000,
"title": "2-к. квартира, 43 м², 5/5 эт."
}
]
},
"price": {
"addItemUrl": "/additem?category_id=24&params%5B110688%5D=458589&params%5B110710%5D=472001&params%5B118593%5D=1714472&params%5B201%5D=1059&params%5B496%5D=5123&params%5B497%5D=5190&params%5B498%5D=5245&params%5B499%5D=5254&params%5B549%5D=5697&params%5B578%5D=54.000000",
"count": 800,
"higherPrice": 7738500,
"lowerPrice": 7148900,
"recommendedPrice": 7370000
},
"suggestions": {
"items": [
{
"address": "Свердловская область, Екатеринбург, Студенческая улица, 70",
"exposure": 63,
"hasGoodPriceBadge": false,
"id": 8000753763,
"imageLink": "https://80.img.avito.st/image/1/1._ByNPLa1UPX7nIL1-VP1R7ucUvUzl5L0651S9w.8SVb7wAlUUR_4CrkmaCoNyDgKKpkduXIvG2ystoh9EU",
"isFavorite": false,
"itemLink": "/ekaterinburg/kvartiry/3-k._kvartira_616_m_15_et._8000753763",
"price": 7400000,
"publishDate": 1772614160,
"title": "3-к. квартира, 61,6 м², 1/5 эт."
},
{
"address": "Свердловская обл., муниципальное образование Екатеринбург, Екатеринбург, ул. Софьи Ковалевской, 12",
"exposure": 13,
"hasGoodPriceBadge": true,
"id": 8060842441,
"imageLink": "https://90.img.avito.st/image/1/1.kg1foLa1PuQpAOzkd86GKmcAPOThC_zlOQE85g.k3bmz3PqoQnYHj81udy1rgF9iy6rmv4pkCx5024vLeA",
"isFavorite": false,
"itemLink": "/ekaterinburg/kvartiry/1-k._kvartira_545_m_24_et._8060842441",
"price": 7490000,
"publishDate": 1778847849,
"title": "1-к. квартира, 54,5 м², 2/4 эт."
},
{
"address": "Свердловская область, Екатеринбург, улица Малышева, 109",
"exposure": 28,
"hasGoodPriceBadge": false,
"id": 8066712904,
"imageLink": "https://20.img.avito.st/image/1/1.kYR7Rba1PW0N5e9tVW-QnELlP23F7v9sHeQ_bw.8emEbUAnDfDmjFC4t4lyFpKJc1ZPOte3I3elhIkqseg?cqp=2.nqHHyj8nxExgujaMxUsx0_L17NSXZ1ZQKCIQgy1FRSfAZeHHzJ12cn_5SQ7YtQ4=",
"isFavorite": false,
"itemLink": "/ekaterinburg/kvartiry/3-k._kvartira_52_m_35_et._8066712904",
"metro": {
"colors": [
"#0A6F20"
],
"distance": "2,6 км",
"name": "Площадь 1905 года"
},
"price": 7520000,
"publishDate": 1777491918,
"title": "3-к. квартира, 52 м², 3/5 эт."
},
{
"address": "Свердловская обл., муниципальное образование Екатеринбург, Екатеринбург, пр-т Ленина, 103",
"exposure": 9,
"hasGoodPriceBadge": false,
"id": 8120591680,
"imageLink": "https://20.img.avito.st/image/1/1.lR-6X7a1OfbM_-v2nA2GQoP_O_YE9Pv33P479A.cG8CmMm3YH5JmMgDlCIIrqA-jWy9cDH46kaAMAnU7Nk?cqp=2.nqHHyj8nxExgujaMxUsx0_L17NSXZ1ZQKCIQgy1FRSfAZeHHzJ12cn_5SQ7YtQ4=",
"isFavorite": false,
"itemLink": "/ekaterinburg/kvartiry/2-k._kvartira_551_m_15_et._8120591680",
"metro": {
"colors": [
"#0A6F20"
],
"distance": "2,9 км",
"name": "Динамо"
},
"price": 7530000,
"publishDate": 1779216343,
"title": "2-к. квартира, 55,1 м², 1/5 эт."
},
{
"address": "Свердловская область, Екатеринбург, улица Коминтерна, 20",
"exposure": 101,
"hasGoodPriceBadge": false,
"id": 7938143586,
"imageLink": "https://60.img.avito.st/image/1/1.BL5067a1qFcCS3pXcPdnzTxKqlfKQGpWEkqqVQ.NN0956Nx_wZJueNDEnfdVWPeyve6hi_bxAUHVVmd65k",
"isFavorite": false,
"itemLink": "/ekaterinburg/kvartiry/3-k._kvartira_549_m_25_et._7938143586",
"metro": {
"colors": [
"#0A6F20"
],
"distance": "3,4 км",
"name": "Геологическая"
},
"price": 7190000,
"publishDate": 1771241225,
"title": "3-к. квартира, 54,9 м², 2/5 эт."
},
{
"address": "Свердловская область, Екатеринбург, улица Малышева, 130Б",
"exposure": 244,
"hasGoodPriceBadge": true,
"id": 4638238123,
"imageLink": "https://30.img.avito.st/image/1/1.PpTjQ7a1kn2V40B9kxd2xebikH1d6FB8heKQfw.fCUNFxjvSx8cYylDSxHgGqQRGf7eYAxmvFs28MjGkxc?cqp=2.nqHHyj8nxExgujaMxUsx0_L17NSXZ1ZQKCIQgy1FRSfAZeHHzJ12cn_5SQ7YtQ4=",
"isFavorite": false,
"itemLink": "/ekaterinburg/kvartiry/4-k._kvartira_562_m_15_et._4638238123",
"metro": {
"colors": [
"#0A6F20"
],
"distance": "3,1 км",
"name": "Площадь 1905 года"
},
"price": 7000000,
"publishDate": 1738063015,
"title": "4-к. квартира, 56,2 м², 1/5 эт."
},
{
"address": "Свердловская обл., муниципальное образование Екатеринбург, Екатеринбург, Студенческая ул., 80",
"exposure": 8,
"hasGoodPriceBadge": false,
"id": 8131017429,
"imageLink": "https://40.img.avito.st/image/1/1.4fku77a1TRBYT58QYPiv3xdPTxCQRI8RSE5PEg.pEjigFdQ2vb_8pkuReSJ1w9xXHSegiJjXXG8-7uJzYQ",
"isFavorite": false,
"itemLink": "/ekaterinburg/kvartiry/1-k._kvartira_41_m_1125_et._8131017429",
"price": 7000000,
"publishDate": 1779276588,
"title": "1-к. квартира, 41 м², 11/25 эт."
},
{
"address": "Свердловская область, Екатеринбург, Комсомольская улица, 50",
"exposure": 102,
"hasGoodPriceBadge": false,
"id": 7901596052,
"imageLink": "https://30.img.avito.st/image/1/1.plJjuba1CrsVGdi7I7uPXSoYCLvdEsi6BRgIuQ.gy3OfVsh4ZQEyPnlX9Kse1VQDKqYHgUR6H00mt6oBvM?cqp=2.nqHHyj8nxExgujaMxUsx0_L17NSXZ1ZQKCIQgy1FRSfAZeHHzJ12cn_5SQ7YtQ4=",
"isFavorite": false,
"itemLink": "/ekaterinburg/kvartiry/4-k._kvartira_729_m_15_et._7901596052",
"price": 6990000,
"publishDate": 1770308156,
"title": "4-к. квартира, 72,9 м², 1/5 эт."
}
],
"searchSimilarUrl": "/ekaterinburg/kvartiry/prodam/panelnyy_dom-ASgBAgICAkSSA8YQ5Af6UQ?f=ASgBAQECBESSA8YQ5Af6Uay~DaTHNYK9DtCk0QEBQMoINIJZgFmEWQJFhAkXeyJmcm9tIjo0My4yLCJ0byI6NjQuOH3GmgwdeyJmcm9tIjo1ODk2MDAwLCJ0byI6ODg0NDAwMH0"
}
}