Я пытаюсь понять, как создавать программы, которые обычно сталкиваются с блокировкой / регулированием на основе IP и т. Д. c. (например, гусеницы / скребки).
Хотелось бы найти некоторые популярные решения для этого (я гибок в языке: java, python, javascript - что угодно)
Давайте рассмотрим пример.
function scrape(index){
website = request(websites[index]);
doStuffWithScrapedData(website);
}
function init(){
for (i = 0; i < websites.length; i++) {
scrape(i);
}
}
Допустим, я очищаю сайт, и у меня есть несколько URL-адресов (разные пути к одному и тому же сайту), и я просто хочу получить их один за другим. Чтобы не сталкиваться с блоками, связанными с IP, я хотел бы сделать что-то вроде:
function init(){
for (i = 0; i < websites.length; i++) {
scrape(i);
if(i % 100 == 0) rotateIpAddress();
}
}
То есть после 100 запросов каким-то образом изменить веб-сайт, обращенный к IP-адресу, то есть прокси-запрос через посредника, чтобы обойти блокировка.
Меня интересует, как можно реализовать rotateIpAddress()
. (Language-agnosti c, я в порядке, просто изучая инструменты торговли, общие термины и т. Д. c.)