Извлечение значения из списка URL-адресов внутри защищенной паролем области

633
user111780

У меня есть список из нескольких сотен URL-адресов в одной защищенной паролем учетной записи, имеющий следующий формат:

https://somesite.com/somescript.php?nameA https://somesite.com/somescript.php?nameB https://somesite.com/somescript.php?nameC ... 

Для каждого из этих URL, я хотел бы, чтобы извлечь значение строки из соответствующей веб - страницы с таким значением всегда размещается между определенным префиксом струной и постфиксом-строкой и созданием локального файла CSV с данными, полученных из каждого URL:

nameA,valueA nameB,valueB nameC,valueC ... 

Есть ли какой-нибудь простой способ или скрипт для этого в Mac OS X?

Я уже пробовал плагин iMacros для Firefox, но, похоже, он не работает, по крайней мере, в Mac OS X. Может быть, Automator, но я не могу понять, как это сделать ...

1
Откуда можно получить `valueA`? Это также в URL, и вы забыли упомянуть об этом? Обратите внимание, что это должно быть относительно текстового редактора и поиска и замены регулярного выражения. Я не знаю о плагине браузера, способного сделать это все же. Я полагаю, у вас есть эти URL-адреса в списке, который вы можете скопировать вставить в текстовый редактор? Или они действительно отдельные и не копируемые? Потому что тогда может потребоваться написание скрипта пользователя с GreaseMonkey или, ну, макрос-плагин. Tom Wijsman 12 лет назад 0
`valueA` отсутствует в URL, оно находится на странице содержимого, к которой ведет URL. Да, у меня есть список URL и / или имен, это не проблема, и изменяется только последний параметр (имя). Пользовательский скрипт в GreaseMonkey может быть хорошей идеей (спасибо!), Хотя я не знаком с этим. Прямо сейчас я рассматривал сценарий bash, использующий ** `cURL` ** [http://curl.haxx.se/] для извлечения страницы содержимого и **` sed` ** для анализа требуемых значений из содержимого. Основными проблемами являются обработка входа в систему через HTTPS, а также все безумия регулярных выражений. user111780 12 лет назад 0
Поскольку есть логины, вы можете обратить внимание на язык программирования и библиотеки, способные передавать данные формы и файлы cookie. А потом скрести все данные со страниц. Я сомневаюсь, поддерживает ли cURL сеансы входа в систему ... Tom Wijsman 12 лет назад 0

1 ответ на вопрос

0
Stoney

This should be relatively easy to do with iMacros. If all the pages are within the same password protected account you could just log in normally through the browser and then run your script. Even if they are not behind the same login and password, it is possible to automate the login process although that adds a level of complexity.

iMacros returns its results in a csv format. If it is difficult to get iMacros to select the precise HTML element you want, I'll often select a larger part of the page and then extract the precise string I need with a Mid() function in Excel. The standalone full version of iMacros has a few helpful features that are not present in the Firefox plugin (at least in the GUI). You can use the full program for free as a 30 day trial.

Alternatively you can use wget to download all the pages and then work with them locally. It can retrieve pages from a list of urls. Wget also allows logging in, although admittedly I haven't tried that. Once you have them local you can process them with iMacros or even a macro running text editor such as notepad++.

A more powerful tool would be Scraperwiki. That however requires some programming experience.

Похожие вопросы