Действие 'Post запрос' не возвращает результат через изменение переменных, чтобы получить ответ, вам нужно вызвать действие 'Текущий Url', 'Содержание ответа', 'Статус ответа' или 'Получить заголовок' после выполнения запроса.
alt text
Вам не нужна регулярка, используйте 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>
С вашей помощью я извлек все ссылки (беру например: 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
Получаю результат:
Климатологи отмечают, что нынешний июнь стал самым жарким за всю историю наблюдений, что определенно говорит об изменении климата на планете.</
Все работает, как нужно, только работает в конструкторе а в БАСе выдает пустой результат(использую "Извлечь все данные").
Также происходит проблема если в извлеченном тексте присутствуют английские слова, например:
@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 страницы на каждый блин символ диапазона...
В действии "Извлечь все данные" не работают группы, именно по этому я указал использовать действие "Первое вхождение"
Я привёл вам рабочую регулярку для вашей ситуации, она работает с текстом, который вы привели в пример, дальнейшее гадание на кофейной гуще работает-неработает считаю бессмысленной тратой времени. Или приводите пример страницы и задачи, которую нужно выполнить на этой странице или не мучайте регулярки