Я пытаюсь узнать, как использовать RCurl (или какой-либо другой подходящий пакет R, если я ошибаюсь из-за того, что RCurl - правильный инструмент), чтобы автоматизировать процесс отправки поисковых терминов в веб-форму и размещения результатов поиска в файл данных. Конкретная проблема, над которой я работаю, заключается в следующем:
У меня есть файл данных, содержащий номер автомобильного номера (LPN) и идентификационный номер автомобиля (VIN) для нескольких автомобилей. У Калифорнийского департамента транспортных средств (DMV) есть форма поиска по веб-странице, где вы вводите LPN и последние пять цифр VIN, и он возвращает оплату сбора за лицензию транспортного средства (VLF) за 2010 или 2009 год (есть селектор для что на форме ввода, а также). (К вашему сведению: это исследовательский проект для изучения распределения VLF-платежей по марке автомобиля, модели и модельному году)
Я мог бы пройти через утомительный процесс ввода данных вручную для каждого транспортного средства, а затем вручную вводить результат в электронную таблицу. Но это 21-й век, и я хотел бы попытаться автоматизировать этот процесс. Я хочу написать сценарий, который будет отправлять каждый LPN и VIN в веб-форму DMV, а затем помещать результат (платеж VLF) в новую переменную VLF в моем файле данных, повторяя это до тех пор, пока он не достигнет конца списка. LPNs и VINs. (Кстати, веб-форма DMV здесь:
https://www.dmv.ca.gov/FeeCalculatorWeb/vlfForm.do).
Мой план состоял в том, чтобы использовать getHTMLFormDescription () (в пакете RHTMLForms), чтобы узнать имена полей ввода, а затем использовать getForm () или postForm () (в пакете RCurl) для получения выходных данных. К сожалению, я застрял на самом первом шаге. Вот команда R, которую я использовал, и вывод:
> forms = getHTMLFormDescription("https://www.dmv.ca.gov/FeeCalculatorWeb/vlfForm.do")
Error in htmlParse(url, ...) :
File https://www.dmv.ca.gov/FeeCalculatorWeb/vlfForm.do does not exist
К сожалению, будучи относительно новым для R и почти совершенно новым для HTTP и просмотра веб-страниц, я не уверен, что делать дальше.
Во-первых, кто-нибудь знает, почему я получаю ошибку при моем вызове getHTMLFormDescription ()? Кроме того, есть ли другой способ выяснить имена полей ввода?
Во-вторых, можете ли вы предложить пример кода, который поможет мне начать с фактической отправки LPN и VIN и получения выходных данных? Является ли getForm () или postForm () правильным подходом или я должен делать что-то еще? Если было бы полезно иметь несколько реальных комбинаций LPN-VIN для отправки, вот три:
LPN VIN
5MXH018 30135
4TOL562 74735
5CWR968 11802
Наконец, так как вы можете видеть, что я полный новичок в этом, есть ли у вас предложения о том, что мне нужно выучить, чтобы стать мастером такого рода поисков в Интернете и как его изучить (в R или на другом языке)? Были бы полезны конкретные предложения для веб-сайтов, книг, списков рассылки, других вопросов StackOverflow и т. Д.
Спасибо за вашу помощь.