file_get_contents
curl
PHP 단순 HTML DOM 파서
html을 가져오는 세 가지 방법, 이미지가 표시되지 않으며, 컬도 브라우저를 시뮬레이션합니다.
다음 이미지 및 텍스트 페이지 링크는 예시입니다
WeChat 이미지 및 텍스트 페이지
예를 들어 html dom 모드에서 코드를 가져옵니다.
<code>$html = new simple_html_dom(); $html->load_file($artical_url); echo "$html";</code>
PHP가 코드를 받은 후 첫 번째 사진의 코드는 다음과 같습니다.
<code><img data-type="gif" data-ratio="0.29676258992805754" data-w="" width="100%" data-src="http://mmbiz.qpic.cn/mmbiz/zynprs47B4SSmGjHh9gJq59bct0TbDmksGMe4kRiaFTspugicmSwLVVfK13HdQbKIR7gaxxwF6icEVT3tCp33IOtg/0?wx_fmt=gif" style="margin: 0px; padding: 0px; width: 670px; height: auto !important; box-sizing: border-box !important; word-wrap: break-word !important; visibility: visible !important;"/></code>
브라우저가 페이지에 접근하여 이미지를 정상적으로 표시하기 위한 코드:
<code><img data-type="gif" data-ratio="0.29676258992805754" data-w="" width="100%" data-src="http://mmbiz.qpic.cn/mmbiz/zynprs47B4SSmGjHh9gJq59bct0TbDmksGMe4kRiaFTspugicmSwLVVfK13HdQbKIR7gaxxwF6icEVT3tCp33IOtg/0?wx_fmt=gif" style="width: 670px !important; box-sizing: border-box !important; word-wrap: break-word !important; visibility: visible !important; height: auto !important;" _width="670px" src="http://mmbiz.qpic.cn/mmbiz/zynprs47B4SSmGjHh9gJq59bct0TbDmksGMe4kRiaFTspugicmSwLVVfK13HdQbKIR7gaxxwF6icEVT3tCp33IOtg/0?wx_fmt=gif&wxfrom=5&wx_lazy=1"></code>
어떻게 해야 할까요? ?
file_get_contents
curl
PHP 단순 HTML DOM 파서
html을 가져오는 세 가지 방법, 이미지가 표시되지 않으며, 컬도 브라우저를 시뮬레이션합니다.
다음 이미지 및 텍스트 페이지 링크는 예시입니다
WeChat 이미지 및 텍스트 페이지
예를 들어 html dom 모드에서 코드를 가져옵니다.
<code>$html = new simple_html_dom(); $html->load_file($artical_url); echo "$html";</code>
PHP가 코드를 받은 후 첫 번째 사진의 코드는 다음과 같습니다.
<code><img data-type="gif" data-ratio="0.29676258992805754" data-w="" width="100%" data-src="http://mmbiz.qpic.cn/mmbiz/zynprs47B4SSmGjHh9gJq59bct0TbDmksGMe4kRiaFTspugicmSwLVVfK13HdQbKIR7gaxxwF6icEVT3tCp33IOtg/0?wx_fmt=gif" style="margin: 0px; padding: 0px; width: 670px; height: auto !important; box-sizing: border-box !important; word-wrap: break-word !important; visibility: visible !important;"/></code>
브라우저가 페이지에 접근하여 이미지를 정상적으로 표시하기 위한 코드:
<code><img data-type="gif" data-ratio="0.29676258992805754" data-w="" width="100%" data-src="http://mmbiz.qpic.cn/mmbiz/zynprs47B4SSmGjHh9gJq59bct0TbDmksGMe4kRiaFTspugicmSwLVVfK13HdQbKIR7gaxxwF6icEVT3tCp33IOtg/0?wx_fmt=gif" style="width: 670px !important; box-sizing: border-box !important; word-wrap: break-word !important; visibility: visible !important; height: auto !important;" _width="670px" src="http://mmbiz.qpic.cn/mmbiz/zynprs47B4SSmGjHh9gJq59bct0TbDmksGMe4kRiaFTspugicmSwLVVfK13HdQbKIR7gaxxwF6icEVT3tCp33IOtg/0?wx_fmt=gif&wxfrom=5&wx_lazy=1"></code>
어떻게 해야 할까요? ?
위 답변 감사드립니다. 안티-리칭에는 문제가 없을 것 같습니다. 크롤링 시 DOM 규칙이 data-src 및 src 속성을 결정할 수 없는 것 같습니다. 오랫동안 조사한 결과 simple_html_dom이 정말 좋은 것이며 다시 크롤링한 후 교체가 가능하다는 것을 알았습니다. 불행하게도 저는 PHP에 익숙하지 않기 때문에 문장이 항상 잘못 작성됩니다. 나중에 js 기본 메소드를 사용하여 국가를 저장하고 php 변수의 내용을 얻은 다음 이를 일반 규칙으로 대체하여 문제를 해결했습니다.
한 가지 더, html_dom을 사용한 후에는 $html->clear를 잊지 마세요.
curl 헤더 매개변수를 수정해 보세요
https://segmentfault.com/q/1010000005046169
귀하의 문제가 이번 문제와 비슷한 것 같으니 한번 시도해 보세요