14.06.2016, 10:20
|
Интересующийся
|
|
Регистрация: 13.06.2016
Сообщений: 18
|
|
Парсер информации с сайта на Js
Привет.
Я полный нуб вообще в веб программировании и полез в node.js точно не поняв что это. У меня даже запустить его не получилось.
Дело в том что в node.js скрипт выполняется на стороне сервера,а мне нужно на стороне клиента.
var request = require("request"),
cheerio = require("cheerio"),
url = "http://www.wunderground.com/cgi-bin/findweather/getForecast?&query=" + 02888;
request(url, function (error, response, body) {
if (!error) {
var $ = cheerio.load(body),
temperature = $('#temp').val();
console.log("Температура " + temperature + " градусов по Фаренгейту.");
} else {
console.log("Произошла ошибка: " + error);
}
});
Это скрипт на node.js, помогите пожалуйста написать такой же на яваскрипт.
|
|
14.06.2016, 11:33
|
Аспирант
|
|
Регистрация: 04.04.2014
Сообщений: 58
|
|
Это и есть JavaScript. NodeJS это не язык программирования. На счёт вашей проблемы, никто вам не поможет, так как вы даже не объяснили только что вам нужно.
|
|
14.06.2016, 11:44
|
Интересующийся
|
|
Регистрация: 13.06.2016
Сообщений: 18
|
|
tourniquet, мне нужно: я открываю ссылку и запускается (при нажатии на кнопку спарсить) скрипт, на моем компьютере, не на сервере
|
|
14.06.2016, 13:25
|
Кандидат Javascript-наук
|
|
Регистрация: 27.04.2015
Сообщений: 99
|
|
Капец как информативно
|
|
14.06.2016, 14:09
|
Профессор
|
|
Регистрация: 27.11.2015
Сообщений: 2,899
|
|
<!DOCTYPE html>
<html>
<head>
<title>Parcing</title>
</head>
<script type="text/javascript">
function getTemp() {
var temperature = document.getElementById('temp').value;
alert("Температура " + temperature + " градусов по Фаренгейту.");
}
</script>
<body>
Температура по Фаренгейту
<input id = "temp" type="text" value='451' />
<button onclick="getTemp();">Спарсить</button>
</body>
</html>
|
|
14.06.2016, 14:13
|
|
Аспирант
|
|
Регистрация: 04.06.2016
Сообщений: 70
|
|
HacKMeDOTcom, если трудно через node.js, то проще всего это сделать через Google Apps Script, в котором можно через
var ответ = UrlFetchApp.fetch(ссылка, переменные);
получить содержимое любой страницы. Описание и примеры здесь:
https://developers.google.com/apps-s.../url-fetch-app
Если не хочешь через Google Apps Script, то можно через PHP, используя функцию "file_get_contents()". Подробности и примеры использования тут:
PHP file_get_contents()
Найти безплатный PHP-hosting можно через поисковый запрос "php domain free"
Поиск: "php domain free"
000webhost.com не советую, т.к. они удалили возможность обращения к чужим страницам.
Ну и третий способ - это новые возможности в JS - через Fetch API. Подробней о ней с примерами использования:
Fetch API
Метод fetch: замена XMLHttpRequest
Введение в fetch. Прощай, XMLHttpRequest!
Но только я не пользовался третьим способом ещё и не знаю, насколько он тебе подойдёт, если брать с чужих страниц содержимоое.
А вот 2 первых способа подойдут однозначно. При этом я советую это сделать через Google Apps Script. Его можно развернуть как WEB-приложение и обращаться потом как к простой странице, даже не включая JS в обозревателе сети - всё будет исполняться на серверах Google.
|
|
14.06.2016, 22:48
|
Интересующийся
|
|
Регистрация: 13.06.2016
Сообщений: 18
|
|
pureJS, И у вас основная моя проблема (изначальная), дело в том что fetch и xmlhttprequest я использовал, целый скрипт получилось написать, но это вообще предназначено для другого, для того чтобы взять информацию не со страницы, а с запроса, но спасибо.
|
|
14.06.2016, 22:50
|
Интересующийся
|
|
Регистрация: 13.06.2016
Сообщений: 18
|
|
Dilettante_Pro,
Не то что мне нужно, у меня используется парсинг с другой страницы.
|
|
14.06.2016, 22:52
|
Интересующийся
|
|
Регистрация: 13.06.2016
Сообщений: 18
|
|
pureJS,
С хостингом проблем не будет, если я начал только изучать JS, то в php я полный 0, можете ли вы мне дать исходный код простого парсера на php. Я так понял он будет исполняться на браузере пользователя, а не на сервере?
|
|
14.06.2016, 23:05
|
|
Аспирант
|
|
Регистрация: 04.06.2016
Сообщений: 70
|
|
Сообщение от HacKMeDOTcom
|
pureJS, И у вас основная моя проблема (изначальная), дело в том что fetch и xmlhttprequest я использовал, целый скрипт получилось написать, но это вообще предназначено для другого, для того чтобы взять информацию не со страницы, а с запроса, но спасибо.
|
HacKMeDOTcom, я вижу, что ты даже не понимаешь, что когда ты хочешь взять данные со страницы, то это запрос к ней. При таких знаниях у тебя вряд ли получится сделать то, что ты хочешь. Прочитай хотя бы одну путёвую книгу про PHP (к примеру), иначе ты не осилишь это! Или найми кого-то - здесь есть раздел "Работа".
В своём ответе я написал целых 3 пути, два первых из которых на 100% верные!
|
|
|
|