sergeich_gs

Рейтинг
160
Регистрация
22.06.2017
Немного загуглил и, кажется, нашёл причину:

CURL 

CURLOPT_POSTFIELDS  no longer accepts objects as arrays. To interpret an object as an array, perform an explicit (array)  cast. The same applies to other options accepting arrays as well.


Но ещё не проверял верно ли предположение, но по симптомам похоже.
Usery #:

Доброго времени суток.

Хотел узнать, полностью ли скрипт совместим с PHP 8? Думаю на хостинге переключить с PHP 7.4 на 8 версию, но надо удостовериться, что скрипт совместим 😊

Я ХЗ. )

Судя по отзывам не совсем совместим, у кого-то работает, у кого-то нет. Официально поддержки не заявлено.

Как будет время, скачаю где-нибудь php8 и попробую запустить.

vl77ru #:

Не работает...

А Вы мне архив с логами не могли бы скинуть?
php не слетает, но где-то логика рушится, поэтому явно видно, по тому, что Вы тут привели, что по пустому ответу он пытается что-то найти.

locale #:
а Earnings по нулям.

У меня работает. ) Ну да ладно, не самая нужная функция.

vl77ru, а у Вас как? Если проблемы остаются, то попрошу как можно детальней описать.

Возможно, что те, что с неблокируемым рекламодателем идут через какую-то рекламную сеть.
Видимо, у меня она заблокирована...

Поискал у себя semrush, нашёл 17 объявлений и все обычные (блокировать можно и объявления и рекламодателя).

Я их у себя v AdSense не блокирую, пусть крутятся.
Я их блокировал как пользователь, которого постоянно догоняет их дебильная реклама на сайтах и на youtube, очень уж они назойливые.
Где-то в настройках Google удалил их и прочий шлак из того, что Google называет моими интересами.

Одной строчки недостаточно, в той версии ещё и функция для curl подправлена, что учитывает этот параметр.
A.Tobias #:
А можно блокировать рекламодателя ? Надоел вот такой - SEMRush . В гугл аккаунте нет возможности его заблокировать, можно только объявление погасить. Но объявления идут каждый день в большом кол-ве , соответственно замучаешься руками блокировать. Есть варианты блокировки какие нибудь в скрипте?

Что нельзя в Adsense — нельзя и тут. ПО просто автоматизирует ручную работу, имитируя пользователя. Можно по URL автоматизировать, наверняка, каждое объявление имеет один и тот же домен.
С этим сталкивался, эти SEMRush весьма надоедливые со своей дебильной рекламой.

Usery #:

При открытии " Blocked advertiser URLs" изредка возникает проблема, когда появляются множество строк в надписью delited, а сами url не показываются. Как я понимаю, скрипт не может по тем или иным причинам получить список заблокированных ссылок и очищает локальный лог.

Может сделать какую нить проверку, чтобы такого не возникало?

Да, есть такой косяк. Я выяснил, что из-за большого кол-ва заблокированных ПО не успевает в заданные рамки дождаться ответа и воспринимает это как отсутствие заблокированных, после чего чистит записи у себя.
Я просто увеличил время ожидания на этот запрос и у меня более не возникала такая ошибка. Ну и на проверку, которую бы тоже можно было сделать я забил после этого. )
$GLOBALS['CURLOPT_TIMEOUT'] = 30; //Adjust it if you need more (If you can not see bloked accounts).
https://github.com/sergeich-gs/adsense-bad-ads-blocker/blob/master/advertisers.php

Dram #:
Сергеич у меня такой вопрос - кол-во стоп слов как-то влияет на скорость и качество поиска? Или это поиск по массиву и +/- сотня другая вообще погоды не делает?


Теоретически, количество влияет на скорость, но точно не на качество (если не случится переполнение допустимой памяти, но на это прям совсем много слов надо, сотни тысяч). Субъективно, да, "сотня другая вообще погоды не делает?" на любом железе. Тысячи и более слов на слабом железе (или ограниченных ресурсах)... ХЗ,  об этом нет объективных данных, но мне кажется и это сильно влиять не должно.

>> ...это поиск по массиву...
Да, списки с файлов идут в массив и потом просто перебор.

Dram #:
А можно как-то искать по части урла? Например по куску 

На разных доменах тонны шлака

Да.

Верно пишете оба.

Поведение зависит от галочки "Check target URL". Если её включить, то будет и по части URL срабатывать.

Это значит, что в данный момент объявление не откручивается, но без указания причин.
Возможно, рекламодатель остановил показ.
Если оно было заблокировано, а потом Google на возмущения рекламодателя это разблокирует, то оно снова может начать отображаться. Или другое на том же акке.

Моё субъективное мнение, основанное на недостатке фактов —  оно может ещё начать отображаться, но вероятность невелика.

Если не лень заблокировать, то хуже не будет. 

Используйте ПО, в автоматическом режиме оно весь шлак заблокирует независимо от того откручивается или нет (ибо не умеет распознавать).
Нормальная идея, можно.

Только в ближайшее время у меня нет времени этим заняться.
Usery #:
в момент выполнения (у меня после запуска скрипт выполняется ~20 минут) можно вносить изменения в конфигурацию, а именно добавлять ключевые слова для фильтрации и\или белый список? 

Да. Изменения будут учтены при следующем запуске.

Usery #:
И второй момент, т.к. скрипт часто по крону запускается, то по логике имеется теоретическая вероятность запуска в момент, когда будет сохраняться конфигурационный файл (по причине внесения в него новых ключевых слов), что по логике приведёт к некорректному считыванию файлов конфигурации, либо даже их порче?

Не думаю, что это может привести к повреждению файлов. К неправильному считыванию — возможно. В таком случае просто процесс завершится с какой-то ошибкой из-за нехватки входных данных. Следующий запуск уже нормально отработает.

Всего: 1119