Intereting Posts
Добавить продажную цену программно к вариациям продукта PHP, что является лучшим способом записи данных в середине файла без перезаписи файла файл нескольких маршрутов istead одного основного файла маршрута в laravel 5 Строгие стандарты: только переменные должны передаваться по ссылке Вопросительные знаки вместо китайских символов Как вы увеличиваете назначенную переменную в smarty, не отображая ее php DOMDocument – манипулирование и кодирование Арабский символ «???????» на php и mysql $ this-> db-> insert_id (); возвращая 0 каждый раз в codeigniter установите флажки рядом с элементами таблицы html php Как конвертировать «Y / m / dh: i A» формат даты и времени в метку времени Msgstr "Соединение для элемента управления, определенное в вашей конфигурации, не удалось" с phpMyAdmin в XAMPP PHP / Bash: создание PPK из ключа OpenSSH с кодовой фразой Как разрешить cURL Error (7): не удалось подключиться к хосту? как создать безопасную систему регистрации php, позволяющую использовать функцию «сохранить меня в системе»?

исключая двойной http из url

Я ссылаюсь на эту ссылку, чтобы извлечь URL-адрес с веб-страницы, содержащей конкретные слова

regex для печати URL-адреса с любой веб-страницы со специальным словом в url

но несколько URL-адресов, таких как pinterest и URL-адрес реферала facebook, содержат слова, которые мне интересны, но я не хочу использовать facebook, pinterest urls, поскольку они не являются прямым URL-адресом, поэтому я хочу исключить эти URL-адреса, поэтому я заметил, что эти URL-адреса будут содержать по крайней мере два http

что-то вроде этого

http://www.pinterest.com/pin/create/button/?url=http%3A%2F%2Fwww.glamsham.com%2Fpicture-gallery%2Fsensual-in-saree-gallery%2Fspecials%2F3774%2F7%2Findex .htm & медиа = HTTP% 3A% 2F% 2Fmedia.glamsham.com% 2Fdownload% 2Fpicturegallery% 2Ffeatured% 2Fbollywood-красавиц-сари% 2F722-чувственное-в-saree.jpg & GUID = gNh5ehWodCZW-0 & описание = Рани% 20Mukerji% 20in% 20saree% 20at % 20Sensual% 20in% 20saree% 20picture% 20gallery% 20picture% 20% 23% 207% 20% 3A% 20glamsham.com

поэтому я хочу исключить URL-адреса, которые содержат по крайней мере два http

Вы можете попробовать что-то вроде этого, избегая этих URI:

 $nodelist = $xpath->query("//a[contains(@href, '" . $needle . "')]"); for($i=0; $i < $nodelist->length; $i++) { $node = $nodelist->item($i); $href = $node->getAttribute('href'); if ( !preg_match('~^http://.+?https?\b~i', $href) ) echo "$href\n"; } 

preg_match('~^http://.+?https?\b~i', $href) должен совпадать с этими URI to-be-excluded

Я бы, вероятно, проверял, как вы их прокручиваете и удаляете с помощью двойных http, например:

 $request_url ='YOUR URL'; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $request_url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $result = curl_exec($ch); $doc = new DOMDocument(); libxml_use_internal_errors(true); $doc->loadHTML($result); // loads your html $xpath = new DOMXPath($doc); $needle = 'blog'; $nodelist = $xpath->query("//a[contains(@href, '" . $needle . "')]"); $validUrls = array(); for($i=0; $i < $nodelist->length; $i++) { $node = $nodelist->item($i); $curUrl = $node->getAttribute('href'); if (substr_count($curUrl,'http')===1) { $validUrls[] = $curUrl; } } var_dump($validUrls); // all urls with only one "http"