Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 21.01.2017, 21:06
Интересующийся
Отправить личное сообщение для arealhz Посмотреть профиль Найти все сообщения от arealhz
 
Регистрация: 21.01.2017
Сообщений: 11

Проблема в навигации по странице
Собственно вот такой простой кусочек кода неожиданно поставил в тупик. С программированием сталкиваюсь крайне редко, хоть в институте и проходил в достаточной степени.



Код:
var cheerio = require('cheerio'),
    $ = cheerio.load('<html><head></head><body><ul id="fruits"><li class="apple">apple text</li><li class="orange">orange <a href="b">text inner</a> text outer</li><li class="pear">Pear</li></ul></body></html>', {
        ignoreWhitespace: true,
        xmlMode: false});
        console.log($('#fruits > li.orange > a').contents().text());
Собственно весь вопрос в том что бы организовать нормальную навигацию по куску html-кода. Как я могу получить отдельно текст "orange" стоящий до ссылки, а затем отдельно получить текст "text outer" стоящий после ссылки? Мне кажется я уже применил все возможные методы с описания https://github.com/cheeriojs/cheerio...ster/Readme.md по этому адресу.
Ответить с цитированием
  #2 (permalink)  
Старый 21.01.2017, 21:31
Аватар для destus
Профессор
Отправить личное сообщение для destus Посмотреть профиль Найти все сообщения от destus
 
Регистрация: 18.05.2011
Сообщений: 1,207

arealhz,
$('#fruits > li.orange').contents().not('a').each(function(){
console.log($(this).text().trim())
});
Ответить с цитированием
  #3 (permalink)  
Старый 21.01.2017, 22:07
Интересующийся
Отправить личное сообщение для arealhz Посмотреть профиль Найти все сообщения от arealhz
 
Регистрация: 21.01.2017
Сообщений: 11

Спасибо тебе добрый человек! Получить доступ к внутренним элементам через отбрасывание ссылок при помощи специального модификатора мне не пришло почему-то в голову
Спасибо за очень оперативную и квалифицированную помощь!
Ответить с цитированием
  #4 (permalink)  
Старый 28.03.2017, 04:29
Gh. Gh. вне форума
Новичок на форуме
Отправить личное сообщение для Gh. Посмотреть профиль Найти все сообщения от Gh.
 
Регистрация: 28.03.2017
Сообщений: 4

Возникла проблема с парсером.

var request = require('request');
var cheerio = require ('cheerio');
url='https://www.premierleague.com/players/3170/Fraser-Forster/stats?se=54'
request ({url, method: 'GET', encoding: 'binary'},	
function (err,res,body) {
if (err) throw err; 
setTimeout ( function () {
var $=cheerio.load(body);
var name=$("div.name").text();
var team=$("div.info").first().text();
var position=$("div.info").last().text();
var games=$("div.topStatList").text();
console.log(name);
console.log(team);
console.log(position);
console.log(games);
},100)});

Изначально, заходя на страницу со статистикой игрока https://www.premierleague.com/player...-Forster/stats отображается общая статистика за все годы карьеры, если в выпадающем списке выбрать последний сезон, то к ссылке добавляется ?se=54, с которой я граблю. Но если пройти по ссылке, то видно что изначально подгружается общая статистика и только потом за последний сезон, который мне и нужен.
Так и мой код загружает первоначальную ОБЩУЮ статистику за все сезоны, а не за последний.
Пробовал таймер ставить- не помогает.
Хотел перед загрузкой данных передать атрибуту data-option-id значение 54. Но ничего не происходит. Помогите решить проблему.

Последний раз редактировалось Gh., 28.03.2017 в 04:32.
Ответить с цитированием
  #5 (permalink)  
Старый 28.03.2017, 09:04
Аватар для Alexandroppolus
Профессор
Отправить личное сообщение для Alexandroppolus Посмотреть профиль Найти все сообщения от Alexandroppolus
 
Регистрация: 25.10.2016
Сообщений: 1,012

Gh.,
ответил в другой теме Проблема с парсером из-за подгружающегося фильтра

если повезет, то cheerio вообще не понадобится.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
связанные списки. проблема в сохранении выбора Juri jQuery 0 18.08.2011 17:44
Проблема со скриптом на html странице Flapjeck Ваши сайты и скрипты 2 22.06.2011 18:19
Проблема с получением атрибутов элементов из набора Nightwalker_nsk jQuery 2 17.05.2011 08:32
Ошибка в jQuery 1.5.1. Не понимаю в чем проблема? viatcheslav AJAX и COMET 0 16.05.2011 11:38
Проблема с CSS COKOJIOB (X)HTML/CSS 5 04.08.2009 14:19