Crawlee 3 зіставляє URL проксі з ідентифікатором сеансу
Використовуйте аргумент сеансу ProxyConfiguration у Crawlee 3.14 для стабільного вибору маршруту та враховуйте змінену модель власності в документації переходу на v4.
У Crawlee 3.14 ProxyConfiguration може зіставити ідентифікатор сеансу з вибраним URL проксі:
import { ProxyConfiguration } from 'crawlee';
const proxies = new ProxyConfiguration({
proxyUrls: [
'http://proxy-a.example:8080',
'http://proxy-b.example:8080',
],
});
const first = await proxies.newUrl('checkout-a');
const sameRoute = await proxies.newUrl('checkout-a');
const anotherSession = await proxies.newUrl('checkout-b');
Список HTTP-проксі надає публічних кандидатів для proxyUrls. Повторні виклики з тим самим ідентифікатором сеансу повертають зіставлений із ним URL. Без ідентифікатора сеансу наданий список перемикається по черзі. Це вибирає налаштовану кінцеву точку; сервіс вищого рівня, який змінює виходи за одним URL, і далі керує власною вихідною поведінкою.
Для сеансів, якими керує crawler, використовуйте пул сеансів crawler і схему збереження cookie. Зниження maxConcurrency до одного не замінює визначення того, які запити належать одному сеансу.
Виведення сеансу з експлуатації створює нову межу ідентичності. Підтримуйте його маршрут, cookie та стан робочого навантаження узгодженими, а не змінюйте лише одне поле під час входу або багатокрокової операції.
Основна версія має значення. Документація Crawlee щодо переходу на v4 видаляє аргумент sessionId з newUrl і переносить зіставлення проксі у власність Session. Наведений вище приклад навмисно використовує інтерфейс v3; не копіюйте його аргумент в іншу основну версію, не адаптувавши цей життєвий цикл.