Исходный код страницы != отдаваемому коду сервером?
Всем привет, казалось бы вопрос не сложный, но решить не удается, пытался отфильтровать вывод скрипта при помощи preg_replace, но тщетно. Записал конечный код (буферизованный) в файл и оказалось что он отличается от кода в "исходном коде страницы", скрипта там нет, функция file_get_contents также дает отличный от "исходного кода страницы" результат.
Для правильного вопроса надо знать половину ответа
Что именно вы подразумеваете под "исходным кодом страницы"?
Если сайт на чистом HTML/CSS, то, как правило, сервер отдаёт страницу ровно в том виде, в котором она записана в файле.
Если это PHP/Perl/Python/..., то выдаваемый результат зависит от работы скрипта и код страницы может полностью генерироваться на лету в зависимости от множества параметров. Например, добавление куки или заголовка в запрос может привести к полностью другому содержимому страницы.
Pavel568, А вы, когда делаете запрос к сайту, полностью имитируете поведение браузера? Выставляете все заголовки, добавляете нужные куки?
Если нет, то вполне могут быть разные результаты.
Pavel568, Повторю, результат работы скрипта может зависеть от кук и заголовков запроса. Например, есть сайты, которые без определённой установленной куки отдают только код устанавливающий эту куку и перезагружающий страницу. Браузер выполнит это всё автоматически и вы увидите только результат второго запроса, с уже установленной кукой. Ваш же file_get_contents получит начальный вариант страницы без содержимого.
Ну и, как написал Dr. Bacon, то, что вы видите в инспекторе браузера, это, зачастую, не код, полученный напрямую от сервера, а результат работы JS-скриптов на странице.
Лучше напишите, какой именно сайт вы пытаетесь спарсить, тогда можно будет сказать что-то определённое.