Получение данных с сайта, требующего аутентификации

В PowerBI я хотел бы получать данные с веб-сайта, требующего аутентификации ( http://kdp.amazon.com/). Переход на New Source, Web, Advanced не показывает мне ничего, что выглядит многообещающе. Надеюсь, я что-то упустил.

Мой идеал - перейти на определенную веб-страницу (после аутентификации) и щелкнуть ссылку, которая позволяет мне загрузить таблицу Excel.

Спасибо за любые идеи / указатели.

3 ответа

Решение

Это зависит, и шансы невелики для вашего случая.

Если это прямой URL-адрес, по которому размещаются данные или файл (например, данные находятся на странице, ссылка на файл, конечная точка веб-API), то это зависит от того, какой метод аутентификации используется веб-сайтом, и можете ли вы предоставить учетные данные через параметры Web.Contents. (обычно используется для аутентификации веб-API)

Если для доступа к данным / файлу после аутентификации требуется дополнительная навигация (например, нажмите, введите информацию), то ответ - нет.

Этот тип очистки данных может быть выполнен с использованием браузера без головы и механизма сценариев / макросов.

Например, xvfb (виртуальный фреймбуфер X) + firefox + iMacros. Я считаю, что это за пределами возможностей Power Bi. Если вы хотите продолжить это, вот несколько ссылок:

https://en.wikipedia.org/wiki/Xvfb

https://addons.mozilla.org/en-us/firefox/addon/imacros-for-firefox/

Опять же, похоже, но с использованием альтернативного набора инструментов:

http://scraping.pro/use-headless-firefox-scraping-linux/

Кстати, сделав это один или два раза раньше - это не очень ценное предложение. Если вам приходится прибегать к подобной тактике, возможно, пришло время подумать, почему разработчики не предоставили вам эту функциональность в API - может, есть веская причина?

Мой идеал - перейти на определенную веб-страницу (после аутентификации) и щелкнуть ссылку, которая позволяет мне загрузить таблицу Excel.

Это типичный вариант использования веб-макроса. Они записывают заполнение формы, клики и скачивание на веб-сайте, а затем могут воспроизвести ее. Хорошие из них:

  • iMacros для Firefox (мощные команды, такие как EVAL)
  • Kantu Web Automation (очень прост в использовании, вместо селекторов используются скриншоты)
  • Selenium IDE (но этот не поддерживает загрузку файлов)

Если вам не нужна запись и вы знакомы с CSS-селекторами и XPath для создания сценария автоматизации вручную, посмотрите на такие инструменты, как:

  • Selenium WebDriver
  • PhantomJS
Другие вопросы по тегам