Прошу подкинуть идею как реализовать парсер ленты новостей vk
-
Нужно сделать так, чтоб парсер парсил из ленты пост+картинки которые в нем, не повторялся, спарсенное публиковал на стене профиля в vk.
Сам пробовал так:
Находил селектор "wall_text" в котором еще 2 селектора, 1 селектор текста новости, другой селектор картинок вложенного в него. Для текста делал "получит текст", а для картинок "получить атрибут элемента" т.к ссылка на картинку была внутри атрибута STYLE, дальше спарсеное публиковал на странице своего профиля простым переходом на страницу и нажатием на кнопку. Все вроде работает, только одна проблема, когда в новости из ленты нет картинки, он находит ее в другой новости и кидает новость с картинкой из другой новости. Это Тестовый скрипт 1
Решить проблему пытался так:
Делал "получить код" для селектора "wall_text" и клал этот код в переменную "lenta" из переменой лента пытался тем же макаром что и выше вытащить нужные мне данные(для текста "вытащить текст", для картинки "получить атрибут элемента") но когда в поле " селктор эелемента" вставляешь переменную [[Lenta]], он ее не видит, хотя в самой переменной есть кусок выдранного и нужно мне кода. это в Тестовый скрипт 2
-
@bladder кошмар какой во втором скрипте))
Так точно не будет работать
>CSS>[[LENTA]] .wall_post_text
Вам надо использовать xpath и засунуть [[LENTA]] в "Текст для применения xpath".
Вообще у xpath есть действие Xpath проверить существование и оно должно помочь для проверки, есть ли картинки в посте.
-
This post is deleted!
-
@uraabk
То есть с помощью >CSS> это сделать нельзя?
-
@bladder said in Прошу подкинуть идею как реализовать парсер ленты новостей vk:
@uraabk
То есть с помощью >CSS> это сделать нельзя?CSS лучше не использовать, он крайне не надежный.
-
@uraabk said in Прошу подкинуть идею как реализовать парсер ленты новостей vk:
CSS лучше не использовать, он крайне не надежный.
Просто интересно из переменной [[LENTA]](в ней находится код как на скрине) можно как-то вытащить wall_post_text и page_post_sized_thumbs clear_fix без xpath?
-
@bladder said in Прошу подкинуть идею как реализовать парсер ленты новостей vk:
@uraabk said in Прошу подкинуть идею как реализовать парсер ленты новостей vk:
CSS лучше не использовать, он крайне не надежный.
Просто интересно из переменной [[LENTA]](в ней находится код как на скрине) можно как-то вытащить wall_post_text и page_post_sized_thumbs clear_fix без xpath?
Регуляркой
-
@uraabk said in Прошу подкинуть идею как реализовать парсер ленты новостей vk:
Xpath
Не получается выдернуть ссылку с помощью xpath. Текст я выдрал так: //div[@class='wall_post_text'] с действием "xpath получит текст", а вот ссылку картинкой никак т.к в атрибуте есть лишний текст. Можно ли без регулярных выражений чисто силами xpath это сделать?
<a onclick="return showPhoto('-81613116_456239639', 'wall-81613116_7161', {"temp":{"base":"https://pp.userapi.com/","x_":["c848620/v848620476/167127/0OgAmjcBomI",604,402],"y_":["c848620/v848620476/167128/gHwk-gYCWKE",640,426]},queue:1}, event)" style="width: 510px; height: 339px;background-image: url(https://pp.userapi.com/c848620/v848620476/167127/0OgAmjcBomI.jpg);" class="page_post_thumb_wrap image_cover page_post_thumb_last_column page_post_thumb_last_row"></a>
Вот эту ссылку надо как-то вытащить:
style="width: 510px; height: 339px;background-image: url(https://pp.userapi.com/c848620/v848620476/167127/0OgAmjcBomI.jpg);
-
@bladder said in Прошу подкинуть идею как реализовать парсер ленты новостей vk:
чисто силами xpath это сделать?
Нет
-
А не поможете разобраться почему у меня не выходит в цикле собирать ссылку на автора+текст+картинку из новостей в ленте?
скрипт
Он берет картикни из соседних постов и соединяет их с текстами и ссылками из других. Без цикла все нормально, ссылки, картинки и тексты берутся из одного поста.
-
@bladder said in Прошу подкинуть идею как реализовать парсер ленты новостей vk:
А не поможете разобраться почему у меня не выходит в цикле собирать ссылку на автора+текст+картинку из новостей в ленте?
скрипт
Он берет картикни из соседних постов и соединяет их с текстами и ссылками из других. Без цикла все нормально, ссылки, картинки и тексты берутся из одного поста.Криво сделали просто. Он по мимо самих постов, лезет ещё в комментарии
-
@uraabk said in Прошу подкинуть идею как реализовать парсер ленты новостей vk:
Криво сделали просто. Он по мимо самих постов, лезет ещё в комментарии
Там нельзя не зацепить комментарии т.к ссылка на фото, автора комментария(или название группы) и основной текст поста лежит в одном диве <div class="_post_content">. Как сделать чтоб он не лез в комменты?
Мне на ум пришел только такой вариант: из этого "_post_content" выдернуть код поста+ картикни и автора(как мне нужно), положить это все в переменную и эту переменную использовать в цикле, но так цикл не хочет запускаться.
-
@bladder said in Прошу подкинуть идею как реализовать парсер ленты новостей vk:
@uraabk said in Прошу подкинуть идею как реализовать парсер ленты новостей vk:
Криво сделали просто. Он по мимо самих постов, лезет ещё в комментарии
Там нельзя не зацепить комментарии т.к ссылка на фото, автора комментария(или название группы) и основной текст поста лежит в одном диве <div class="_post_content">. Как сделать чтоб он не лез в комменты?
Мне на ум пришел только такой вариант: из этого "_post_content" выдернуть код поста+ картикни и автора(как мне нужно), положить это все в переменную и эту переменную использовать в цикле, но так цикл не хочет запускаться.
Так вы место селектора элемента указали код страницы. Занимаетесь чем то непонятным... Просто берите в цикле каждый _post_content, а уже из него получайте то, что нужно. Стараясь максимально точно указать необходимые объекты с помощью xpath/css/match
-
@uraabk said in Прошу подкинуть идею как реализовать парсер ленты новостей vk:
Просто берите в цикле каждый _post_content, а уже из него получайте то, что нужно. Стараясь максимально точно указать необходимые объекты с помощью xpath/css/match
Так ведь я так и делал! Тот скрипт что я скинул :
@bladder said in Прошу подкинуть идею как реализовать парсер ленты новостей vk:
А не поможете разобраться почему у меня не выходит в цикле собирать ссылку на автора+текст+картинку из новостей в ленте?
скрипт
Он берет картикни из соседних постов и соединяет их с текстами и ссылками из других. Без цикла все нормально, ссылки, картинки и тексты берутся из одного поста.берет каждый _post_content и из него вытаскивает:
wall_post_text - текст поста
post_header_info - отсюда название группы или автора поста
.page_post_thumb_last_row- тут спомощью ксс и регулярного выражение достается ссылка.С однократным вытаскиванием все работает четко, а вот когда делаешь это в цикле, то картинки и текст он берет из разных постов, а не из одного как должно быть.
-
@bladder said in Прошу подкинуть идею как реализовать парсер ленты новостей vk:
берет каждый _post_content и из него вытаскивает:
wall_post_text - текст поста
post_header_info - отсюда название группы или автора поста
.page_post_thumb_last_row- тут спомощью ксс и регулярного выражение достается ссылка.С однократным вытаскиванием все работает четко, а вот когда делаешь это в цикле, то картинки и текст он берет из разных постов, а не из одного как должно быть.
Так этого не достаточно, раз он при .page_post_thumb_last_row лезет в комментарии. Надо уточнять данный селектор, что бы он "исключал" комменты