정규 매칭은 일반적으로 단일 웹사이트의 웹 콘텐츠를 크롤링할 때 사용됩니다. 하지만 서로 다른 웹사이트의 구조가 너무 이상해서 통일된 정규식으로 매칭하기가 어렵습니다. "라인 블록 분포 함수 기반 일반 웹 페이지 텍스트 추출 알고리즘"의 저자는 웹 페이지에서 기사 텍스트를 추출하는 일반적인 방법을 요약하고 라인 블록 분포 기반 텍스트 추출 알고리즘을 제안하며 PHP, Java 등으로 구현을 제공했습니다. 이 알고리즘의 주요 원칙은 두 가지 사항을 기반으로 합니다. 1. 텍스트 영역 밀도: HTML에서 모든 태그를 제거한 후 텍스트 영역의 문자 밀도가 더 높아지고 여러 줄의 공백이 줄어듭니다. 2. 줄 블록 길이: 텍스트가 아닌 영역의 콘텐츠는 평균 수준입니다. 개별 라벨(라인 블록)이 더 짧습니다. 알고리즘 단계는 다음과 같습니다.
1. 스타일, Js 스크립트 콘텐츠 등을 포함한 모든 태그를 제거하지만 원래 줄바꿈 n은 유지합니다
2. 웹 페이지의 내용을 라인별로 나누어 라인 블록 $block_i$를 텍스트의 $[i, i + blockSize]$ 라인의 합으로 정의하고 이를 기준으로 라인 블록 길이의 분포 함수를 제공합니다. 줄 번호:
3. 텍스트는 가장 긴 줄 블록에 표시되며 범위는 양쪽에서 줄 블록 길이까지입니다. of 0이 가로채기됩니다:
4. 텍스트 영역에 나타나는 그림을 추출해야 하는 경우에만 유지하면 됩니다. 첫 번째 단계에서 태그를 제거할 때 태그의 내용:
위 내용은 [python 튜토리얼] 웹페이지 텍스트 및 콘텐츠 이미지 추출 알고리즘에 대한 자세한 내용은 PHP 중국어 웹사이트(www.php.cn)를 참고하세요!