Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
1 / 1 / 0
Регистрация: 18.01.2017
Сообщений: 207

Нужен скрипт для считывания атрибута src изображений из html кода и замены каждого из них

20.02.2023, 02:06. Показов 3047. Ответов 73
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
есть переменная $html, в которой произвольный html код. нужно найти в нём все теги img, и собрать их атрибуты src в массив $arrSrc. Дальше массив перебирается, и для каждого тега img генерируется новый атрибут src.
PHP
1
2
3
4
5
foreach ($arrSrc as $k => $src)
{
    $src_new = make_new_src($src);
    // дальше  заменить в $html атрибут данного тега на $src_new
}
вопрос как вставлять новые атрибуты обратно в код $html? замена подстроки не подходит, потому что в коде может быть текст аналогичный старому src, но не в атрибуте src тега img. А заменять надо только в атрибутах src. и у двух изображений в исходном коде может быть одинаковый src, а новые src сгенерируются разные.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
20.02.2023, 02:06
Ответы с готовыми решениями:

Для считывания html кода сайта
Всем доброго времени суток. У меня такой вопрос возможно ли считать html код сайта? Если да то как. Например есть такой код сайта ...

Нужен скрипт исполнения html кода
В названии описал не совсем точно, но вот основная мысль! (излагаю в виде скриншота) (Для ввода текста использую <textarea>, но...

Нужен скрипт для сжатия изображений
на странице есть дивы, в которых изображения прописаны через img, но размеры этих изображений достаточно большие, поэтому при запуске сайта...

73
132 / 76 / 16
Регистрация: 08.07.2022
Сообщений: 309
20.02.2023, 19:42
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от POSE Посмотреть сообщение
85.174.202.157 ? Айпи в бане
Ща зайду в роутер, и поменяю, секунду. Я хоть марс могу поставить из роутера, у меня огромный спектор сетей
0
132 / 76 / 16
Регистрация: 08.07.2022
Сообщений: 309
20.02.2023, 19:44
Цитата Сообщение от POSE Посмотреть сообщение
Айпи в бане
Работает. А сколько слов то было
Миниатюры
Нужен скрипт для считывания атрибута src изображений из html кода и замены каждого из них  
1
Заблокирован
20.02.2023, 19:45
xkkx, возможно зайдешь раз или два. Парсить меня не сможешь. А там больше ляма страниц.
0
132 / 76 / 16
Регистрация: 08.07.2022
Сообщений: 309
20.02.2023, 19:46
Цитата Сообщение от POSE Посмотреть сообщение
Парсить меня не сможешь. А там больше ляма страниц
Бедные люди, больше 10 раз страницу не смогут обновить)))
0
Заблокирован
20.02.2023, 19:47
Вышли полный код. Завтра проверю свою защиту. Сегодня уже влом.
0
132 / 76 / 16
Регистрация: 08.07.2022
Сообщений: 309
20.02.2023, 19:47
Цитата Сообщение от POSE Посмотреть сообщение
Вышли полный код.
Держи

Кликните здесь для просмотра всего текста
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
function GetURLBody($url, $USERAGENT){
    $curl = curl_init($url);
    curl_setopt($curl, CURLOPT_USERAGENT, $USERAGENT);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($curl, CURLOPT_VERBOSE, true);
    
    $cookies = tempnam ("/tmp", "CURLCOOKIE");
    curl_setopt($curl, CURLOPT_COOKIEJAR, $cookies);
    curl_setopt($curl, CURLOPT_COOKIEFILE, $cookies);
    curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
    curl_setopt($curl, CURLOPT_COOKIESESSION, true ); // session true
    curl_exec($curl); // load session 
 
    $result = curl_exec($curl); // get body
    if (curl_errno($curl)) {
        echo 'Error:' . curl_error($curl);
    }
    curl_close($curl);
      
   return $result;
}
 
var_dump(GetURLBody('https://rerura.com/', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/110.0'));


Разумеется на реальном проекте, никто не будет генерировать каждый раз сессию. Там 1 раз куки инициализируются
1
Заблокирован
21.02.2023, 06:36
xkkx, короче с защитой всё норм. Я только зря переживал. Если ты откроешь 10-30 раз (зависит от скорости открытия страниц) страницы моего сайта - будет айпи заблокирован и получишь ошибку 503. Я специально сделал 503 ошибку, что бы хакеры не догадались
Но, в любом случае спасибо, что попытался.
0
2 / 2 / 0
Регистрация: 15.02.2022
Сообщений: 469
21.02.2023, 07:13
Jodah
Он же дал ссылку, сама функция тут
А есть ссылка из офф. документации?
Почему я не могу найти это на php net

Добавлено через 3 минуты
POSE
короче с защитой всё норм. Я только зря переживал. Если ты откроешь 10-30 раз (зависит от скорости открытия страниц) страницы моего сайта - будет айпи заблокирован и получишь ошибку 503. Я специально сделал 503 ошибку, что бы хакеры не догадались
Но, в любом случае спасибо, что попытался.
Это он так пытается досить ваш сайт?
Я не могу понять, защита от чего?
Что он пытается сделать с вашим сайтом?

Добавлено через 3 минуты
xkkx
didom что это?
библиотека или фреймворк?
0
Заблокирован
21.02.2023, 07:29
Цитата Сообщение от G_manX Посмотреть сообщение
Это он так пытается досить ваш сайт?
Не обращай внимание. Это в твоей теме мы между собой решали спор. От Ддоса у меня на nginx предусмотрено. А это как бы дополнительно на пыхе

Добавлено через 1 минуту
Цитата Сообщение от G_manX Посмотреть сообщение
библиотека или фреймворк?
Я не смотрел, но отвечу. Если файл один - библиотека. Если несколько - фреймворк Принцип тот же
0
Эксперт PHP
3901 / 3239 / 1353
Регистрация: 01.08.2012
Сообщений: 10,917
21.02.2023, 12:39
Цитата Сообщение от G_manX Посмотреть сообщение
Почему я не могу найти это на php net
Потому что это сторонняя библиотека.
0
132 / 76 / 16
Регистрация: 08.07.2022
Сообщений: 309
21.02.2023, 13:02
Цитата Сообщение от POSE Посмотреть сообщение
будет айпи заблокирован и получишь ошибку 503. Я специально сделал 503 ошибку, что бы хакеры не догадались
Нормальные библиотеки типа guzzle разжуют твой сайт под сессией, и переварят целиком.

Цитата Сообщение от G_manX Посмотреть сообщение
А есть ссылка из офф. документации?
Не на все решения есть документация ОФФ
Цитата Сообщение от G_manX Посмотреть сообщение
Что он пытается сделать с вашим сайтом?
Он сказал что не будет доступа из PHP к сайту. Но стоило только включить сессию, так его сайт попой встал и сказал бери меня - но не больше десяти раз

Цитата Сообщение от G_manX Посмотреть сообщение
библиотека или фреймворк?
Библиотека.
0
Заблокирован
21.02.2023, 13:37
Цитата Сообщение от xkkx Посмотреть сообщение
Нормальные библиотеки типа guzzle разжуют твой сайт под сессией, и переварят целиком.
Ну, это врядли. Ты вот хвастался хвастался, а так ничего и не смог сделать. Я как-то давно столкнулся с похожей проблемой. Мне надо было пропарсить сайт, но у меня на пыхе это сделать не получалось. Сделал это с помощью js и одной библиотеки. Смысл был такой: открывалась страницу в браузере, потом вызывалось окно сохранения страницы и html сохранялся в файл. И так далее всё в автомате. Не очень быстро, но зато ручками не надо работать. Потом уже эти страницы распарсил на пыхе и вытянул нужную инфу.
Цитата Сообщение от xkkx Посмотреть сообщение
Но стоило только включить сессию, так его сайт попой встал и сказал бери меня - но не больше десяти раз
Десять страниц это ни о чём. Парсингом это назвать сложно. Или бегай к роутеру и постоянно перезагружай его. Но не всегда получишь динамически новый айпи... можно и старый получить

Добавлено через 2 минуты
Можно, конечно, делать через прокси. Но много рабочих прокси-серверов тоже не наберешь Я так делал когда-то. Но там айпи банилось через намного большее кол-во открываемых страниц.
0
132 / 76 / 16
Регистрация: 08.07.2022
Сообщений: 309
21.02.2023, 13:51
Цитата Сообщение от POSE Посмотреть сообщение
Ты вот хвастался хвастался, а так ничего и не смог сделать.
Я получил содержимое сайта через curl ? Получил. В чём была проблема? В том что нужно передать флаг CURLOPT_COOKIESESSION и включить куки.

Цитата Сообщение от POSE Посмотреть сообщение
у меня на пыхе это сделать не получалось.
Не судьба значит было разобраться в консоли F12. Там же есть скачать HAR файл.

Цитата Сообщение от POSE Посмотреть сообщение
Десять страниц это ни о чём.
Ты же понимаешь, что реальных пользователей блокируешь через 10 страниц?))) Они просто заходят на сайт, и средней кнопкой колёсика мышки открывают интересные страницы.

А ты их сразу в бан.

Цитата Сообщение от POSE Посмотреть сообщение
Или бегай к роутеру и постоянно перезагружай его.
У меня в реальном времени меняется через роутер. Продвинутый прокси стоит.

Цитата Сообщение от POSE Посмотреть сообщение
Но не всегда получишь динамически новый айпи...
Я могу любой установить, хоть германию, хоть марс. Там в списке их более 500+. И можно ещё маску IP настраивать по звёздочкам.
0
Заблокирован
21.02.2023, 14:11
Цитата Сообщение от xkkx Посмотреть сообщение
Ты же понимаешь, что реальных пользователей блокируешь через 10 страниц?))) Они просто заходят на сайт, и средней кнопкой колёсика мышки открывают интересные страницы.
А ты их сразу в бан.
Это ты не понимаешь. Нормальный пользователь может хоть целый день сидеть у меня на сайте и открывать хоть тысячи страниц. Банятся только типа тебя, которые хотят курлом получать страницы
0
Эксперт PHP
 Аватар для liris
5515 / 1198 / 164
Регистрация: 16.01.2023
Сообщений: 2,851
21.02.2023, 14:12
Цитата Сообщение от POSE Посмотреть сообщение
Но много рабочих прокси-серверов тоже не наберешь
Может быть они сейчас в большом дефиците, конечно, но в былые времена их насыпали по тысяче за полтора-два бакса. И этого будет достаточно, чтобы разобрать любой более-менее крупный сайт.

Очень крупный не будет страдать такой ерундой, как ограничение числа обращений к нему (им же надо чтобы сайт работал, а не выпендривался, кого пускать, а кого не пускать).

Не по теме:

Как по мне, ерундой занимаетесь. Но интересно. Пишите еще.



Добавлено через 1 минуту
Цитата Сообщение от POSE Посмотреть сообщение
Нормальный пользователь может хоть целый день сидеть у меня на сайте и открывать хоть тысячи страниц. Банятся только типа тебя, которые хотят курлом получать страницы
xkkx, нам нужен эксперимент. Можешь ли ты открывать много страниц подряд на его сайте, не получая бан? А потом дернуть курлом десяток страниц и получить бан.
0
Заблокирован
21.02.2023, 14:18
Правда, если начнешь очень быстро открывать - будет замедлять nginx или вообще выдать ошибку. А если обычно - смотри сколько хочешь. Мне не жалко)

Добавлено через 1 минуту
Цитата Сообщение от liris Посмотреть сообщение
xkkx, нам нужен эксперимент.
Попробуйте. Сами увидите. Только не очень быстро открывайте. Настройки nginx менять не буду.

Добавлено через 3 минуты
Цитата Сообщение от liris Посмотреть сообщение
Очень крупный не будет страдать такой ерундой, как ограничение числа обращений к нему
Не в обращениях дело. В моей тематике очень много конкурентов. Не хочется, что бы слизывали у меня контент.
0
132 / 76 / 16
Регистрация: 08.07.2022
Сообщений: 309
21.02.2023, 14:30
Цитата Сообщение от POSE Посмотреть сообщение
Банятся только типа тебя, которые хотят курлом получать страницы
Меня сейчас забанило просто перезагружая страницу, проверил имеет ли смысл делать тест на CURL

185.104.112.201

Цитата Сообщение от POSE Посмотреть сообщение
Попробуйте. Сами увидите. Только не очень быстро открывайте.
Банишь честных пользователей из браузера, что уж тут говорить
0
Заблокирован
21.02.2023, 14:38
Цитата Сообщение от xkkx Посмотреть сообщение
Банишь честных пользователей из браузера, что уж тут говорить
Такое не может быть. Или у тебя куки отключены. Честные пользователи куки не отключают

Добавлено через 37 секунд
И тем более не заходят через Польшу, скрывая свой айпи

Добавлено через 1 минуту
Вот только что обновил страницу 50 раз. Никакого бана нет. Так что не заливай
0
132 / 76 / 16
Регистрация: 08.07.2022
Сообщений: 309
21.02.2023, 14:43
Цитата Сообщение от POSE Посмотреть сообщение
Такое не может быть. Или у тебя куки отключены. Честные пользователи куки не отключают
Всё. Лови дудос)

Добавлено через 25 секунд
Запустил загрузку раз в 1 секунду
1
Заблокирован
21.02.2023, 14:49
Цитата Сообщение от xkkx Посмотреть сообщение
Всё. Лови дудос)
С Германии? У меня показывает что в среднем раз 15 сек. И пока не банит. Пойду включу логи посещений и проверю не врешь ли ты

Добавлено через 38 секунд
Забанило все таки. Счас разбаню и включай опять. Проверю в логах
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
21.02.2023, 14:49

Скрипт замены изображений
Вообщем написал скрипт своими силами Меняет картинки скрывая/показывая блоки с изображениями, но слишком громоздка может кто подскажет...

Не работает скрипт замены изображений
Уже всю голову сломал почему он не работает. help (function($) { $(document).ready(function() { $('#preview img').on('click',...

Получение значений href, src и alt из фрагмента HTML-кода
Доброго времени суток. к примеру есть такой код $q = '<a href="http://www.site.ru/"><img...

Скрипт для обновления HTML кода
На внутреннем сервере есть папка с файлам для html страниц (index.html + ещё несколько страничек, папка img, папка css, папка files). Хочу...

Скрипт для добавления кода на 1000 html страниц
Добрый вечер. Видимо конец дня и не могу сообразить.Есть задание, надо на 1000 html страниц с одинаковой структурой добавить код в одно и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ Основная суть и тезисы по измерениям: 0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема. Объект не может перемещаться в 0D. 1D (Первое измерение):. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru