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 :: как средствами php или javascript получить исходный код веб страницы

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
gibproject
Отправлено: 25 Ноября, 2010 - 20:59:06
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Нояб. 2010  


Помог: 0 раз(а)




Есть URL существующей веб страницы, получаемой по методу GET...

URL типа: http://www[dot]webpage[dot]com/page[dot]xml?[dot][dot][dot]amp;param2=text2

Задача: получить исходный код этой веб страницы и вывести его на страницу...

Исходный код одинаково был получен 2мя способами:
1 - скачан с помощью DownloadMaster при вставке URL этой страницы в закачку;
2 - URL был открыт в Mozilla Firefox потом клик правой кнопкой и "Исходный код страницы".
Пробовал воспользоваться fopen и file, потом получить содержимое через fgets, но вылазит ошибка "Warning: fgets(): 26 is not a valid stream resource in X:\XXXXXX\XXXXX\XXXXX\XXXXX\index.php on line XXX"...

Подскажите кто-нибудь как решить эту проблему...
 
 Top
ALEN
Отправлено: 25 Ноября, 2010 - 21:01:25
Post Id



Участник


Покинул форум
Сообщений всего: 1459
Дата рег-ции: Авг. 2008  
Откуда: Крым


Помог: 11 раз(а)




Есть такая классная штука, называется CURL
 
 Top
DlTA
Отправлено: 25 Ноября, 2010 - 21:02:51
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2952
Дата рег-ции: Окт. 2010  


Помог: 53 раз(а)




file_get_contents()
только первым параметров установите необходимый URL
 
 Top
ALEN
Отправлено: 25 Ноября, 2010 - 21:03:53
Post Id



Участник


Покинул форум
Сообщений всего: 1459
Дата рег-ции: Авг. 2008  
Откуда: Крым


Помог: 11 раз(а)




DlTA
Многие хостеры закрывают такую возможность!!!
Самый лучший способ это CURL
 
 Top
gibproject
Отправлено: 25 Ноября, 2010 - 21:13:53
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Нояб. 2010  


Помог: 0 раз(а)




DlTA пишет:
file_get_contents()
только первым параметров установите необходимый URL


Спасибо, помогло, хотя раньше работало и через file(), а недавно вдруг через file() не стало открываться...

ALEN пишет:
Самый лучший способ это CURL


Через CURL мне не принципиально, страница хоть и мультиязычная, но для исходника мне нужен всё-таки код полностью на английском...
 
 Top
ALEN
Отправлено: 25 Ноября, 2010 - 21:16:35
Post Id



Участник


Покинул форум
Сообщений всего: 1459
Дата рег-ции: Авг. 2008  
Откуда: Крым


Помог: 11 раз(а)




gibproject
А при чем тут язык, просто на некоторых серверах во внешний мир функции file_get_contents и ее родители - не могу выйти.
 
 Top
OrmaJever Модератор
Отправлено: 25 Ноября, 2010 - 21:19:05
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




Вобще file_get_contents() презназначен для локальных файлов...


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
gibproject
Отправлено: 25 Ноября, 2010 - 21:26:42
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Нояб. 2010  


Помог: 0 раз(а)




ALEN пишет:
А при чем тут язык


Нууууу, если воспользоваться CURL, то при указании в заголовке http запроса что-то типа "Accept-Language: ru", то та же страница выведется на русском языке, что в данном примере мне не принципиально...

OrmaJever пишет:
Вобще file_get_contents() презназначен для локальных файлов


И поэтому я дико рад, что он корректно сработал на удалённом файле...)))

(Отредактировано автором: 25 Ноября, 2010 - 21:28:38)

 
 Top
ALEN
Отправлено: 25 Ноября, 2010 - 21:27:35
Post Id



Участник


Покинул форум
Сообщений всего: 1459
Дата рег-ции: Авг. 2008  
Откуда: Крым


Помог: 11 раз(а)




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

gibproject
ну огорчу вас, если вы используете не CURL и у вас с кодировкой проблема - то это очень кривые руки.
Кодировка от CURL не зависит!

(Отредактировано автором: 25 Ноября, 2010 - 21:30:29)

 
 Top
gibproject
Отправлено: 25 Ноября, 2010 - 21:36:57
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Нояб. 2010  


Помог: 0 раз(а)




ALEN пишет:
ну огорчу вас, если вы используете не CURL и у вас с кодировкой проблема - то это очень кривые руки.
Кодировка от CURL не зависит!


У меня нет проблем с кодировкой, ибо iconv вполне справляется, но в данном случае мне просто нужен код страницы на английском языке...)))
 
 Top
DlTA
Отправлено: 25 Ноября, 2010 - 22:07:10
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2952
Дата рег-ции: Окт. 2010  


Помог: 53 раз(а)




на минутку отлучился а тут уже и диалог развернулся (мануал смотрел))
gibproject, если не CURL то бывают умные "сервера" которые анализируют кто к ним щимится, и с целью избежать перегрузки и ... блокируют нежеланных, а благодоря CURL можно максимально хорошо прикинуться рядовым браузером.
 
 Top
ALEN
Отправлено: 25 Ноября, 2010 - 22:08:45
Post Id



Участник


Покинул форум
Сообщений всего: 1459
Дата рег-ции: Авг. 2008  
Откуда: Крым


Помог: 11 раз(а)




Вот тебе в тему готовое решение:
http://forum.php.su/topic.php?fo...ostid=1290714979
 
 Top
gibproject
Отправлено: 25 Ноября, 2010 - 22:18:16
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Нояб. 2010  


Помог: 0 раз(а)




DlTA пишет:
благодоря CURL можно максимально хорошо прикинуться рядовым браузером


Спасибо, о заголовках http запроса я в курсе, особенно о тех, которые как раз и отличают браузер к ним ломится или что-то левое...)))

З.Ы. Например такая строчка в заголовке вполне убедит сервер, что страницу с него требует Mozilla Firefox...)))

CODE (htmlphp):
скопировать код в буфер обмена
  1. User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; ru; rv:1.9.2.12) Gecko/20101026 MRA 5.6 (build 03278) Firefox/3.6.12

(Отредактировано автором: 25 Ноября, 2010 - 22:18:36)

 
 Top
JustUserR
Отправлено: 26 Ноября, 2010 - 14:42:19
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




gibproject Использование функций осуществления работы с файловыми объектами с перегруженными аргументами включающими в себя URL-адреса целевых web-ресурсов не является рекоммендованным решением - дело в том что использование такого подхода не позволяет обеспечить поблочное считывание и передачи информационных полей а также включения требуемых HTTP-заголовков - в том числе для согласования кодовый таблиц представления данных


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB