wget + JavaScript? - PullRequest
       22

wget + JavaScript?

23 голосов
/ 05 мая 2011

У меня есть эта веб-страница, которая использует клиентский JavaScript для форматирования данных на странице перед ее отображением для пользователя.

Можно ли каким-то образом использовать wget для загрузки страницы и использовать какой-нибудь клиентский движок JavaScript для форматирования данных, как они будут отображаться в браузере?

Ответы [ 3 ]

23 голосов
/ 05 мая 2011

Скорее всего, это может произойти с чем-то вроде PhantomJS

. Вы можете написать скрипт phantomjs, который будет загружать страницу, как браузер, а затем либо делать снимки экрана, либо использовать JS дляосмотрите страницу и вытащите данные.

4 голосов
/ 09 декабря 2015

Вот простой маленький скрипт phantomjs, который запускает javascript на веб-странице и позволяет вывести его локально:

file: get.js

var page = require('webpage').create(),
  system = require('system'), address;

address = system.args[1];
page.scrollPosition= { top: 4000, left: 0}  
page.open(address, function(status) {
  if (status !== 'success') {
    console.log('** Error loading url.');
  } else {
    console.log(page.content);
  }
  phantom.exit();
});

Используйте его так:
$> phantomjs /path/to/get.js "http://www.google.com" > "google.html"

Изменение /path/to, url и filename на то, что вы хотите.

1 голос
/ 05 мая 2011

Не с wget, так как я сомневаюсь, что он включает в себя любую форму движка JavaScript. Однако вы можете использовать WebKit для обработки страницы и, следовательно, вывода.

Использование таких вещей в качестве основы для получения контента: http://situated.wordpress.com/2008/06/04/take-screenshots-of-a-website-from-the-command-line/

...