@Xandiyam Нет. У большинства прокси ротация по времени. Особенно если это не приватка.
Помогите с регуляркой, пожалуйста.
-
Нужно с текста ниже достать ссылки и текст перед ними:
«Если одна из них “садится” на стену, то сестричка обязательно должна сделать так же»</em></strong></p> <figure><img src="https://site.com/storage/2020/s/sobaki-s-milymi-strannostyami/8.jpgНужно учитывать:
https://site.com/storage - не изменный текст
/2020/s/sobaki-s-milymi-strannostyami/ - изменяется
8.jpg - от 1.jpg до 30.jpgСам текст:
</figure> <p class="note">Фото: <a href="https://www.reddit.com/r/funny/comments/f2fhx6/my_dog_is_a_bit_of_a_freak_when_the_camera_comes/">Reddit</a></p> <p><strong><em>«Если одна из них “садится” на стену, то сестричка обязательно должна сделать так же»</em></strong></p> <figure><img src="https://site.com/storage/2020/s/sobaki-s-milymi-strannostyami/8.jpg" alt=""></figure> <p class="note">Фото: <a href="https://www.reddit.com/r/WhatsWrongWithYourDog/comments/aiogw2/when_one_sits_on_the_wall_obviously_the_other_has/">Reddit</a></p> <p><strong>Похоже, кто-то здесь не в восторге от высоты</strong></p> <figure><img src="https://site.com/storage/2020/s/sobaki-s-milymi-strannostyami/9.jpg" alt=""></figure> <p class="note">Фото: <a href="https://www.reddit.com/r/WhatsWrongWithYourDog/comments/f5ibvv/not_going_any_higher_on_this_stupid_hike/">Reddit</a></p> <p><strong>До и после прогулки</strong></p> <figure><img src=" -
Вам не нужна регулярка, используйте xpath //p[@class="note"] для текста и //p[@class="note"]/@href для ссылок
-
@UserTrue said in Помогите с регуляркой, пожалуйста.:
//p[@class="note"]
По "note" это не та ссылка и текст которая мне нужна. Посмотрите, пожалуйста, еще раз.
И мне нужно знать что над ссылкой https://site.com/storage/2020/s/sobaki-s-milymi-strannostyami/8.jpg стоит текст, который описывает эту фото. Тоесть если это ссылка на фото 8.jpg то мне нужет текст, который располагается над ней и сохранить этот текст в таком формате 8.txt
Как сохранять я знаю, вот только как спарсить мучаюсь вторые сутки. -
Вот это нужно мне:
«Если одна из них “садится” на стену, то сестричка обязательно должна сделать так же»</em></strong></p> <figure><img src="https://site.com/storage/2020/s/sobaki-s-milymi-strannostyami/8.jpg"
Похоже, кто-то здесь не в восторге от высоты</strong></p> <figure><img src="https://site.com/storage/2020/s/sobaki-s-milymi-strannostyami/9.jpg"
-
@UserTrue К сожалению не подходит, на другой странице сайта уже другая картина:
width="100%" height="600"></iframe></figure> <p>По ее мнению, игрок-мужчина никогда бы не получил предупреждение за резкое высказывание. <i>«Я неоднократно наблюдала, как резко мужчины называли судей, но те никогда их не наказывали. Я здесь, чтобы бороться за права и равенство женщин. И я считаю сексизмом то, что он отнял у меня гейм, когда я назвала его вором»,</i> — отметила Уильямс.</p> <figure data-feedback="fb:likes, fb:comments"><img src="https://site.com/storage/2018/s/serena-uilyams-proigrala-yaponke/4.jpg"></figure> <!-- Composite Start --> <div id="M459225ScriptRootC704163"> <div id="M459225PreloadC704163"> Loading... </div> <script> (function(){ var D=new Date(),d=document,b='body',ce='createElement',ac='appendChild',st='style',ds='display',n='none',gi='getElementById',lp=d.location.protocol,wp=lp.indexOf('http')==0?lp:'https:'; var i=d[ce]('iframe');i[st][ds]=n;d[gi]("M459225ScriptRootC704163")[ac](i);try{var iw=i.contentWindow.document;iw.open();iw.writeln("<ht"+"ml><bo"+"dy></bo"+"dy></ht"+"ml>");iw.close();var c=iw[b];} catch(e){var iw=d;var c=d[gi]("M459225ScriptRootC704163");}var dv=iw[ce]('div');dv.id="MG_ID";dv[st][ds]=n;dv.innerHTML=704163;c[ac](dv); var s=iw[ce]('script');s.async='async';s.defer='defer';s.charset='utf-8';s.src=wp+"//jsc.mgid.com/o/f/ofigenno.com.704163.js?t="+D.getUTCFullYear()+D.getUTCMonth()+D.getUTCDate()+D.getUTCHours();c[ac](s);})(); </script><iframe style="display: none;"></iframe> </div> <!-- Composite End --><figure data-feedback="fb:likes, fb:comments"><img src="https://site.com/storage/2018/s/serena-uilyams-proigrala-yaponke/5.jpg"></figure> <p>Профессиональные теннисисты и журналисты раскритиковали поведение Серены. Ее выпад против судьи сочли не иначе как истерикой и обвинили Уильямс в том, что она просто не умеет проигрывать. Канадец Грег Руседски заявил, что Уильямс нужно извиниться перед Осакой, ведь она испортила японке первую большую победу.</p> <figure data-feedback="fb:likes, fb:comments"><img src="https://site.com/storage/2018/s/serena-uilyams-proigrala-yaponke/6.jpg"></figure> <div class="ad intext">Получается нужно отталкиваться все таки от ссылки и смотреть выше от нее текст.
-
@wladeeck said in Помогите с регуляркой, пожалуйста.:
@UserTrue К сожалению не подходит, на другой странице сайта уже другая картина:
width="100%" height="600"></iframe></figure> <p>По ее мнению, игрок-мужчина никогда бы не получил предупреждение за резкое высказывание. <i>«Я неоднократно наблюдала, как резко мужчины называли судей, но те никогда их не наказывали. Я здесь, чтобы бороться за права и равенство женщин. И я считаю сексизмом то, что он отнял у меня гейм, когда я назвала его вором»,</i> — отметила Уильямс.</p> <figure data-feedback="fb:likes, fb:comments"><img src="https://site.com/storage/2018/s/serena-uilyams-proigrala-yaponke/4.jpg"></figure> <!-- Composite Start --> <div id="M459225ScriptRootC704163"> <div id="M459225PreloadC704163"> Loading... </div> <script> (function(){ var D=new Date(),d=document,b='body',ce='createElement',ac='appendChild',st='style',ds='display',n='none',gi='getElementById',lp=d.location.protocol,wp=lp.indexOf('http')==0?lp:'https:'; var i=d[ce]('iframe');i[st][ds]=n;d[gi]("M459225ScriptRootC704163")[ac](i);try{var iw=i.contentWindow.document;iw.open();iw.writeln("<ht"+"ml><bo"+"dy></bo"+"dy></ht"+"ml>");iw.close();var c=iw[b];} catch(e){var iw=d;var c=d[gi]("M459225ScriptRootC704163");}var dv=iw[ce]('div');dv.id="MG_ID";dv[st][ds]=n;dv.innerHTML=704163;c[ac](dv); var s=iw[ce]('script');s.async='async';s.defer='defer';s.charset='utf-8';s.src=wp+"//jsc.mgid.com/o/f/ofigenno.com.704163.js?t="+D.getUTCFullYear()+D.getUTCMonth()+D.getUTCDate()+D.getUTCHours();c[ac](s);})(); </script><iframe style="display: none;"></iframe> </div> <!-- Composite End --><figure data-feedback="fb:likes, fb:comments"><img src="https://site.com/storage/2018/s/serena-uilyams-proigrala-yaponke/5.jpg"></figure> <p>Профессиональные теннисисты и журналисты раскритиковали поведение Серены. Ее выпад против судьи сочли не иначе как истерикой и обвинили Уильямс в том, что она просто не умеет проигрывать. Канадец Грег Руседски заявил, что Уильямс нужно извиниться перед Осакой, ведь она испортила японке первую большую победу.</p> <figure data-feedback="fb:likes, fb:comments"><img src="https://site.com/storage/2018/s/serena-uilyams-proigrala-yaponke/6.jpg"></figure> <div class="ad intext">Получается нужно отталкиваться все таки от ссылки и смотреть выше от нее текст.
Вы бы лучше привели пример всей страницы, или лучше сразу нескольких, чтобы сразу проверять решение, а не ждать от вас ответа работает\не работает.
-
Для того текста, который вы указали здесь, подойдёт такая регулярка:
<p>([\s\S]*?)<\/p>[\s\S]*?img src="(.*?)"можете проверить здесь https://regex101.com/r/mweOIm/1
Используйте действие "Первое вхождение", в переменной GROUP1 будет текст, а в GROUP2 ссылка
-
@Fox Не совсем помогло.
Я избавился от лишнего "Извлеч все данные" <p>.*</p>
- Получаю текст:
- <p>Климатологи отмечают, что нынешний июнь стал самым жарким за всю историю наблюдений, что определенно говорит об изменении климата на планете.</p> <figure><img src="https://site.com/storage/2019/a/anomalnaya-zhara-v-evrope/11.jpg" alt=""></figure> <p>Эмманюэль Макрон и вовсе прямым текстом заговорил о глобальном потеплении и подчеркнул, что <a href="https://site.com/kak-vestsi-ekologicheskiy-stil-zhizni">нынешних мер по борьбе с ним недостаточно</a>. </p> <figure><img src="https://site.com/storage/2019/a/anomalnaya-zhara-v-evrope/12.jpg" alt=""></figure> <p>Не так давно мы писали о том, что <a href="https://site.com/rekordnoe-tayanie-ldov-v-grenlandii">растаяли льды в Гренландии</a>. И хотя это тоже сезонное явление, ученые всего мира видят огромные проблемы. Человечество всё-таки довело планету до серьезных климатических изменений, и кто знает, что нам теперь сулит будущее.</p>"
-
С вашей помощью я извлек все ссылки (беру например: https://site.com/storage/2020/s/sobaki-s-milymi-strannostyami/11.jpg)
-
И получаю регуляркой русский текст который расположен над ссылкой: "Извлечь все данные":
([\—\”\“\№)([][{}\«\»=<>^.,-_'"@?!:$\0-9А-Яа-яёЁ( )]+)([)([][{}\«\»=<>^.,-_'"@?!:$\0-9a-zA-ZА( )]+)https://site.com/storage/2020/s/sobaki-s-milymi-strannostyami/11.jpg -
Получаю результат:
Климатологи отмечают, что нынешний июнь стал самым жарким за всю историю наблюдений, что определенно говорит об изменении климата на планете.</
Все работает, как нужно, только работает в конструкторе а в БАСе выдает пустой результат(использую "Извлечь все данные").
Также происходит проблема если в извлеченном тексте присутствуют английские слова, например:
- <p><strong><em>«Если одна из них “садится” на стену, то sister обязательно должна сделать так же»</em></strong></p> <figure><img src="https://site.com/storage/2020/s/sobaki-s-milymi-strannostyami/11.jpg" alt=""></figure>
-
@wladeeck said in Помогите с регуляркой, пожалуйста.:
@Fox Не совсем помогло.
Я избавился от лишнего "Извлеч все данные" <p>.*</p>
- Получаю текст:
- <p>Климатологи отмечают, что нынешний июнь стал самым жарким за всю историю наблюдений, что определенно говорит об изменении климата на планете.</p> <figure><img src="https://site.com/storage/2019/a/anomalnaya-zhara-v-evrope/11.jpg" alt=""></figure> <p>Эмманюэль Макрон и вовсе прямым текстом заговорил о глобальном потеплении и подчеркнул, что <a href="https://site.com/kak-vestsi-ekologicheskiy-stil-zhizni">нынешних мер по борьбе с ним недостаточно</a>. </p> <figure><img src="https://site.com/storage/2019/a/anomalnaya-zhara-v-evrope/12.jpg" alt=""></figure> <p>Не так давно мы писали о том, что <a href="https://site.com/rekordnoe-tayanie-ldov-v-grenlandii">растаяли льды в Гренландии</a>. И хотя это тоже сезонное явление, ученые всего мира видят огромные проблемы. Человечество всё-таки довело планету до серьезных климатических изменений, и кто знает, что нам теперь сулит будущее.</p>"
-
С вашей помощью я извлек все ссылки (беру например: https://site.com/storage/2020/s/sobaki-s-milymi-strannostyami/11.jpg)
-
И получаю регуляркой русский текст который расположен над ссылкой: "Извлечь все данные":
([\—\”\“\№)([][{}\«\»=<>^.,-_'"@?!:$\0-9А-Яа-яёЁ( )]+)([)([][{}\«\»=<>^.,-_'"@?!:$\0-9a-zA-ZА( )]+)https://site.com/storage/2020/s/sobaki-s-milymi-strannostyami/11.jpg -
Получаю результат:
Климатологи отмечают, что нынешний июнь стал самым жарким за всю историю наблюдений, что определенно говорит об изменении климата на планете.</
Все работает, как нужно, только работает в конструкторе а в БАСе выдает пустой результат(использую "Извлечь все данные").
Также происходит проблема если в извлеченном тексте присутствуют английские слова, например:
- <p><strong><em>«Если одна из них “садится” на стену, то sister обязательно должна сделать так же»</em></strong></p> <figure><img src="https://site.com/storage/2020/s/sobaki-s-milymi-strannostyami/11.jpg" alt=""></figure>
Боже мой.. бедный интерпретатор регулярного выражения, ему же перебирать оба ваших диапазона
([\—\”\“\№)([][{}\«\»=<>^.,-_'"@?!:$\0-9А-Яа-яёЁ( )]+)([)([][{}\«\»=<>^.,-_'"@?!:$\0-9a-zA-ZА( )]+)к полному коду html страницы на каждый блин символ диапазона...
В действии "Извлечь все данные" не работают группы, именно по этому я указал использовать действие "Первое вхождение"
Я привёл вам рабочую регулярку для вашей ситуации, она работает с текстом, который вы привели в пример, дальнейшее гадание на кофейной гуще работает-неработает считаю бессмысленной тратой времени. Или приводите пример страницы и задачи, которую нужно выполнить на этой странице или не мучайте регулярки