@yrsmir Use the "Allow cache" action at the top of the script.
a1.png
When the captcha appears, use the "Get last item from cache" action to get the base64 image.
a2.png
Then save the image as *.jpg and do the next steps.
Не совсем басовское. Но может кому пригодится. В общем надо мне было капчей картинков и много. Бас канешн можно, но есть проблема)) мне надо сначала научить его или дать ему инструмент которым он смогет сам их разбирать. В общем остаются руки.. или деньги. Руки лень( деньги? жалко. Чо делать? лан в общем нашел кто соберет руками, но как то автоматизировать то надо. Ну блин пусть неуч но погромист жеж.
фиддлер может. Ну дальше так:
Сам код
if (oSession.responseCode == 200 && oSession.url.indexOf("recaptcha/api2/") > -1 && oSession.oResponse.headers.ExistsAndContains("Content-Type", "image/png")) {
oSession.utilDecodeResponse();
oSession.SaveResponseBody("C:\\temp\\recaptcha\\" + oSession.SuggestedFilename); // путь прописывайте 2 обратных слеша, в данном виде сохранит файл и либо если он называется назовет (учтите он перезаписывает, а часто названия совпадают) либо обзовет номером запроса, если нет.
}
Да каждую рекапчу .png он теперь собирать будет в папку temp\recaptcha
Как нетрудно догадаться фидлер нетрудно научить и другим подобным вещам. FiddlerScript достаточно функциональная штука. Методы конечно по умолчанию... Но вам никто не мешает писать свои, вопрос конечно будет ли работать.
Вот собсна и все пользуйтесь может кому пригодится.
@tts9 Я сразу не добавил. Все эти манипуляции вставлять в FiddlerScript нужно не абы где, а только после
public static void OnBeforeResponse(Session oSession)
Для более сурьезного изучения fiddlera идите сюда там много чего есть
Вот например: Save specific file locally