Ваша проблема очень легко решаема, и на самом деле многие люди / компании уже сделали это, но, увы, вы долго не работали. Грубо говоря, «сканирование» обычно относится к поиску в Интернете по ширине или глубине с использованием тегов привязки на html-страницах в качестве границ между узлами.
То, что вы делали в Perl, было просто поиском строки html.
Для вашего API я бы предложил найти DOM-парсер, чтобы вам не пришлось возиться с парсингом html-строк и присущими им ошибками.
Несколько лет назад я хотел получить некоторые данные о ценах на квартиры в регионах штата Массачусетс, поэтому я написал небольшую программу-обходчик, чтобы извлечь все списки квартир из craigslist и выбросить их в базу данных.
Если кому-то интересно, я могу продолжить, но это выходит за рамки этого ответа.
О да, и это было в PHP ...