프로그램 PHP 컬렉션 프로그램 원리 분석
Jul 29, 2016 am 08:42 AM며칠 고민 끝에 드디어 그 이유를 알아냈습니다. 여기에 적어두고 전문가에게 수정을 요청하세요.
컬렉션 프로그램의 아이디어는 매우 간단합니다. 일반적으로 목록 페이지인 페이지를 열고 거기에 있는 모든 링크의 주소를 가져온 다음 링크를 하나씩 열어서 찾는 것입니다. 우리가 관심을 갖고 있는 것. 발견되면 데이터베이스에 넣거나 다른 처리를 하십시오. 아주 간단한 예를 들어 이야기해 보겠습니다.
먼저 컬렉션 페이지(일반적으로 목록 페이지)를 결정합니다. 여기의 대상은 http://www.jb51.net/article/11/index.htm입니다. 이것은 목록 페이지이며, 우리의 목적은 이 목록 페이지에 있는 모든 기사를 수집하는 것입니다.
목록 페이지가 있습니다. 첫 번째 단계는 목록 페이지를 열고 해당 콘텐츠를 프로그램에 통합하는 것입니다. 일반적으로 fopen 또는 file_get_contents 두 가지 함수가 사용됩니다. 여기서는 fopen을 예로 사용합니다. 그것을 여는 방법? 매우 간단합니다. $source=fopen("http://www.jb51.net/article/11/index.htm",'r') 실제로 해당 내용이 우리 프로그램에 통합되었습니다. 획득한 $source는 처리할 수 있는 텍스트가 아니라 리소스이므로 fread 함수를 사용하여 내용을 변수로 읽어옵니다. 예:
$c//www.jb51.net/article/7/all/545.1.htm)]. 소스코드를 보면, 내부 기사의 링크 주소가 모두 다음과 같은 것을 알 수 있습니다<div><a href="http://www.jb51.net/article/10/all/273.1.htm "> 데이터베이스 연결 코드를 함수에 캡슐화하여 읽어야 할 때 호출합니다..</a>
정규식을 작성할 수 있습니다. $count=preg_match_all("/<div class="in_arttitle"><ashref="(. ?)">(. ?)</a>/",$content,$art_list)
$art_list[1][$s] 배열에는 기사의 링크 주소가 포함되어 있습니다. 그리고 $art_list[2][$s]에는 특정 기사의 제목이 포함되어 있습니다. 이쯤 되면 전투의 절반이라고 볼 수 있다.
그런 다음 for 루프를 사용하여 각 링크를 차례로 클릭한 다음 제목과 같은 방식으로 콘텐츠를 가져옵니다. 위의 내용은 온라인에서 찾은 튜토리얼과 비슷하지만, 이 for 루프의 경우 온라인 튜토리얼이 형편없습니다. 처음에는 루프를 돕기 위해 js를 사용했습니다. , 또는 사용된 예를 들어 보겠습니다. 처음에는
for($i=0;$i<20;4i {
중간이 콘텐츠 수집 부분입니다. 한 페이지를 수집했는데 반드시 다른 페이지를 수집해야 합니다
그런데 fopen을 사용하여 링크를 열면 작동하지 않고, 결국에는 작동하지 않습니다. echo "<META HTTP-EQUIV=REFRESH C id를 사용해야 합니다. 다음 숫자는 루핑을 달성하고 여러 페이지를 수집하는 데 도움이 될 수 있습니다. 이것이 진정한 루핑의 핵심입니다.
}
내 두뇌 조금 불편하고 글이 좀 지저분하네요. 전문가의 관점에서는 이것이 문제일 수도 있지만 저 같은 초보자에게는 정말 도움이 됩니다.

인기 기사

인기 기사

뜨거운 기사 태그

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제









