Парсер Live Internet (ищет сайты с открытой статистикой)

(Ответов: 3, Просмотров: 1914)
  1. Дипломник Аватар для Rlove
    • Регистрация: 12.11.2013
    • Сообщений: 175
    • Репутация: 93
    • Webmoney BL: ?
    Доброго времени, форумчане.
    В общем решил потихоньку изучать PHP. А какое изучение без практики?
    Было принято решение написать простенький скрипт-парсер.
    Он должен по заданной категории и диапазону суточной посещаемости вытащить сайты с LiveInternet, вывести их в эксцель табличку.
    С поставленной задачей вроде-бы справился, но чует мое сердце, что это откровенный быдлокод и руки мне за такое нужно оторвать

    Вот сам скрипт. http://vk.com/doc120102403_261733037
    ( для работы на сервере необходима поддержка cUrl). Если кому-то вдруг пригодиться - буду безумно рад ^^

    А теперь вопросы к знатокам.
    1)Понимаю, что разбираться в чужом коде совсем неблагоприятное дело, но не могли бы вы глянуть его на предмет ошибок? Подсказать где можно было сделать лучше, как делать нельзя и т.д. ?

    2)Вопрос по поводу curl (эту часть я нагло скопипастил, но не до конца разобрался). В файле data.inc.php есть функция get_page($link). В конце я хочу вернуть значение $content . Почему-то return не срабатывает, приходится делать переменную глобальной.

    3)Выскакивала ошибка Maximum execution time of 30 seconds exceeded. Пофиксил увеличив время выполнения, но по-моему так делать совсем нельзя. Не подскажете ли альтернативные методы решения?
    Последний раз редактировалось Rlove; 16.01.2014 в 17:32.
    • 3

    Спасибо сказали:

    *RU*(16.01.2014), 5Nizza(17.01.2014), byhgalter(17.01.2014),
  2. Опытный Аватар для Vladimir-AWM
    • Регистрация: 07.02.2010
    • Сообщений: 345
    • Репутация: 160
    • Webmoney BL: ?
    Глянул бегло.

    На счет get_page($link), то нужно результат в переменную записывать и потом с ней работать, т.е. так: $content = get_page($link);

    Maximum execution time of 30 seconds exceeded увеличивать если есть возможность не стоит, т.к. у других такой возможности может и не быть. Можно конечно им советовать запускать на локальном сервере, но лучше сделать если возможно через jquery.

    Так же если страниц в категории было бы немного, например по 50-100 штук, то можно было использовать многопоточный CURL.
    Последний раз редактировалось Vladimir-AWM; 16.01.2014 в 19:16.
    • 1

    Спасибо сказали:

    Rlove(17.01.2014),
  3. Дипломник Аватар для Rlove
    • Регистрация: 12.11.2013
    • Сообщений: 175
    • Репутация: 93
    • Webmoney BL: ?
    Vladimir-AWM,прости, почему-то туплю.
    Допустим, есть функция:
    PHP код:
    function sqr($a) {
    $a $a*$a;
    return 
    $a;} 
    Если я вызываю сначала функцию: sqr(2);
    А потом пытаюсь вывести $а - ничего не произойдет?
    Т.е. мне нужно присвоить некой переменной значение функции,а уже потом оперировать им ?
    PHP код:
    $b sqr(2);
    echo 
    $b
    • 0
  4. Опытный Аватар для Vladimir-AWM
    • Регистрация: 07.02.2010
    • Сообщений: 345
    • Репутация: 160
    • Webmoney BL: ?
    Rlove, да, все верно, результат функции мы записываем в переменную и далее работаем с этой переменной. А если пытаться вывести $а вне функции, то не получится, если только ее не сделать глобальной. Функции и все что выполняется внутри как бы изолированы от основного кода.

    Вот примерчик:

    PHP код:
    function sqr($a) {
       
    $a $a*$a;
       return 
    $a;
    }

    $a sqr(2);
    echo 
    $a;

    echo 
    sqr(4); 
    • 0

Похожие темы

Темы Раздел Ответов Последний пост
У кого-нибудь наблюдается проблемы со статистикой в advmaker?
Партнерские программы 4 02.10.2013 03:16
Где найти нч и сч запросы, кто ищет, как ищет?
Вопросы от новичков 22 14.06.2013 15:00
Где найти простенький ЯНдекс каталог парсер и функциональный парсер выдачи Яндекса.
Софт, скрипты, сервисы 3 04.12.2012 22:01
Adsense ID PUB парсер - палит MFA сетки, собирает сайты одновладельцев
Софт, скрипты, лицензии 0 22.10.2012 15:52
Поиск сайтов по заданному вами запросу с открытой статистикой "По поисковым фразам" В Li.
Услуги по SEO 7 20.07.2012 19:27

У кого попросить инвайт?

Вы можете попросить инвайт у любого модератора:

Информеры