@13-Floky

Как вывести ссылку с парсинга в NODEJS?

Ребят выручайте.

Делаю что-то типо парса, ниже код:

const osmosis = require('osmosis');
const fs = require('fs');
let savedData = [];
osmosis


   .get('https://##########//profi')
   .find('.user-preview')
   .set({
           'Name': '.user-preview_name',
	   'Specialization': '.user-preview_specialization',
  	   'City': '.user-preview_city',
	   'URL': '.data-url',
    })

		
	.data(function(data) {
      console.log(data);
      savedData.push(data);
   })
   .done(function() {
      fs.writeFile('data.json', JSON.stringify( savedData, null, 4), function(err) {
        if(err) console.error(err);
        else console.log('Data Saved to data.json file');
      })
   });


Беда в том что все работает нормально, но САМОЕ ГЛАВНОЕ как вытащить мне user-contacts, т.е не ПОКАЗАТЬ КОНТАКТЫ А ИМЕННУ ССЫЛКУ НА CONTACTS

<div class="user-contacts" data-component="userContacts" data-url="https://www.###########/contacts" data-component-ready="true"><a class="js-userContactsShow" href="#">Показать контакты</a></div>


И еще не главный но то же вопрос , как сделать чтобы парсер а именно ( .get('https://##########//profi') цеплял не только одну страницу а скажим /profi/2 /profi/3 /profi/4
  • Вопрос задан
  • 600 просмотров
Пригласить эксперта
Ответы на вопрос 2
jdava
@jdava
Node, Vue, JavaScript,React
Сам искал этот ответ и в итоге нашел.

если тебе нужно взять значения из какого "тэга" то перед названием тебе просто нужно вставить @ - собаку а потом название "тэга", например @href
Ответ написан
Комментировать
SynCap
@SynCap
Делаю интернет с 1998 года
Вариант 1: тупо прём по ссылке
.follow('.user-contacts@data-url')
.find(.....)
.set(.....)
....


Вариант 2: если там нажимашка pop-up с аяксамми, то иммитируем клик
.click('.js-userContactsShow')
.delay(500)
.find(......)
.set(.....)
....
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы