Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Вопрос по теории fopen
есть такакй функция, которая читает содержимоей файла на удаленном хосте.
Когда я вхожу броузером, я также могу просмотреть исходный код страницы
Будут ли отличия
в статистике сайта
когда fopen выполняется кроном и человек заходит из броузера!
Подразумеваю, что да! Только ли в header'ах?
Мелкий
Отправлено: 21 Мая, 2010 - 18:51:16
Активный участник
Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009 Откуда: Россия, Санкт-Петербург
Помог: 618 раз(а)
запрашивайте курлом и замените все заголовки на заголовки от браузера, тогда различий не будет.
Правда, косвенно выяснить, что запрашивается всё равно скриптом, можно - по тому, выполняется ли JS. (косвенно, т.к. js можно вырубить)
----- PostgreSQL DBA
EuGen
Отправлено: 21 Мая, 2010 - 18:53:24
Профессионал
Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007 Откуда: Berlin
Помог: 707 раз(а)
Подделать можно все, было бы желание.
Открывать же fopen удаленные ресурсы не есть правильно (как выше замечено, для этого есть curl)
----- Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
Djin_dj
Отправлено: 21 Мая, 2010 - 21:57:47
Частый гость
Покинул форум
Сообщений всего: 180
Дата рег-ции: Июнь 2008 Откуда: Россия
Помог: 0 раз(а)
EuGen пишет:
Подделать можно все, было бы желание.
Открывать же fopen удаленные ресурсы не есть правильно (как выше замечено, для этого есть curl)
на самом деле надо парсить чужие html 2 раз в день но чтобы сервер узнал что это бот не сразу!
curl вещь занимательная, изучу вопрос с курл, он возвращает страницу или текст страницы?
Мелкий
Отправлено: 21 Мая, 2010 - 23:05:21
Активный участник
Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009 Откуда: Россия, Санкт-Петербург
Помог: 618 раз(а)
Djin_dj пишет:
curl вещь занимательная, изучу вопрос с курл, он возвращает страницу или текст страницы?
он возвращает то, что ответил сервер, можно даже со всеми заголовками сохранить.
----- PostgreSQL DBA
Champion
Отправлено: 22 Мая, 2010 - 09:17:38
Активный участник
Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008 Откуда: Москва
Помог: 57 раз(а)
Есть у fopen() третий параметр - контекст. Он создается вот этой функцией. http://www.php.net/manual/en/fun...ntext-create.php
И, в принципе, какую-то часть вещей можно сделать без курла. Хотя, курлом проще конечно.
Djin_dj пишет:
Будут ли отличия
в статистике сайта
когда fopen выполняется кроном и человек заходит из броузера!
Смотря как эту статистику ведут, пользуются ли в ней информацией, передаваемой браузером.
JustUserR
Отправлено: 22 Мая, 2010 - 12:48:07
Активный участник
Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009
Помог: 17 раз(а)
Djin_dj пишет:
Curl вещь занимательная, изучу вопрос с курл, он возвращает страницу или текст страницы?
Он возвращает содержимое тела HTTP-ответа расшифрованное в соответствии с Content-transfer-encoding - и в конкнретном случае это может быть HTML-документ Для получения текста можно или воспользоваться регулярными выражениями - или сгенерирвать страницу с JS-скриптом и получить текст без тегов с помощью свойства document.body.innerText
Djin_dj пишет:
Когда fopen выполняется кроном и человек заходит из броузера!
Если вы используете url-open-оболочки то обнаружить такую подмену будет очень просто - поскльку не передаются ни все нужные HTTP-заголовки ни cookie ни исполняется JS - поэтому для качественно эмуляции браузера вы можете посмотреть его взаимодействие с сайтом с помощью HTTP-сниффера типа Proxomitron и функциями CURL/fsockopen копировать соответствующие HTTP-запросы
----- Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.