크롤러 및 웹사이트 크롤링 방지 메커니즘 우회에 대한 간략한 논의
【관련 학습 추천: 웹사이트 제작 동영상 튜토리얼】
크롤러란 간단하게 일방적으로 말하면 서버와 자동으로 상호 작용하여 작업을 수행하는 도구입니다. 데이터를 얻습니다. 크롤러에 대한 가장 기본적인 것은 웹페이지의 소스 코드 데이터를 얻는 것입니다. 더 깊이 들어가면 웹페이지와 POST 상호 작용을 하고 POST 요청을 받은 후 서버에서 반환되는 데이터를 가져옵니다. 한마디로, 크롤러는 자동으로 원본 데이터를 얻는 데 사용됩니다. 추가 데이터 처리 등에 대해서는 이 기사에서는 주로 크롤러가 데이터를 얻는 부분에 대해 이야기하고 싶습니다. 크롤러 여러분은 웹사이트의 Robot.txt 파일에 주의하시기 바랍니다. 크롤러가 법을 위반하거나 웹사이트에 해를 끼치는 일이 없도록 하십시오.
크롤링 방지 및 크롤링 방지 개념의 부적절한 예
여러 가지 이유(예: 서버 리소스, 데이터 보호 등)로 인해 많은 웹사이트에서 크롤러 효과를 제한합니다.
생각해 보세요. 인간이 크롤러 역할을 한다면 웹 페이지의 소스 코드를 어떻게 얻을 수 있을까요? 가장 일반적으로 사용되는 방법은 소스 코드를 마우스 오른쪽 버튼으로 클릭하는 것입니다.
사이트에서 오른쪽 클릭이 차단되는데 어떻게 해야 하나요?
우리 크롤러에서 가장 유용한 도구인 F12를 꺼냅니다(토론 환영)
F12를 동시에 누르면 열립니다(웃긴)
소스 코드 나왔어요!!
사람을 크롤러로 취급할 때 오른쪽 클릭을 차단하는 것이 크롤링 방지 전략이고, F12가 크롤링 방지 방법입니다.
공식적인 크롤링 방지 전략에 대해 이야기해 보겠습니다.
실제로 크롤러를 작성하는 과정에서 데이터가 반환되지 않는 상황이 있었을 것입니다. 이 경우 서버가 UA 헤더(사용자)를 제한했을 수 있습니다. -agent)입니다. 아주 기본적인 크롤링 방지 방법으로, 요청을 보낼 때 UA 헤더만 추가하면 됩니다... 아주 간단하지 않나요?
사실 필수 사항을 모두 추가하는 것은 간단하고 투박한 방법입니다. 헤더를 한 번에 요청하세요...
웹사이트의 인증 코드도 크롤링 방지 전략이라는 사실을 발견한 적이 있나요? 웹사이트 사용자가 실제 사람이 될 수 있도록 인증 코드가 정말 큰 기여를 했습니다. 인증코드와 함께 인증코드 인식도 등장했습니다.
그러고 보니 인증코드 인식이 먼저인지, 이미지 인식이 먼저인지 궁금합니다.
이제 간단한 인증코드는 인식하기가 매우 간단해졌습니다. , 세분화 및 재구성. 하지만 이제 웹사이트 인간-기계 인식은 다음과 같이 점점 더 무서워졌습니다.
노이즈 제거 이진법의 개념을 간략하게 설명합니다.
이진값, 즉 이미지 자체를 두 가지 톤으로만 변경하는 예는 다음과 같습니다. 매우 간단합니다. Python PIL 라이브러리의
Image.convert("1")
이 됩니다. 이 인증코드를 어떻게 식별할지 고민해 보세요. 이때, 노이즈 제거는 인증에 따라 유용하게 사용됩니다. 코드 자체의 특성으로 배경색을 계산할 수 있습니다. 인증코드와 글꼴 등을 제외한 RGB 값을 색상으로 변환하고, 글꼴은 생략합니다. 샘플 코드는 다음과 같습니다. 색상만 변경하면 됩니다.
for x in range(0,image.size[0]): for y in range(0,image.size[1]): # print arr2[x][y] if arr[x][y].tolist()==底色: arr[x][y]=0 elif arr[x][y].tolist()[0] in range(200,256) and arr[x][y].tolist()[1] in range(200,256) and arr[x][y].tolist()[2] in range(200,256): arr[x][y]=0 elif arr[x][y].tolist()==[0,0,0]: arr[x][y]=0 else: arr[x][y]=255
Arr은 numpy로 얻은 이미지의 RGB 값에서 파생된 행렬입니다. 독자가 직접 코드를 개선하고 실험해 볼 수 있습니다.
인증 코드 개발에는 비교적 명확한 숫자와 문자, 간단한 덧셈, 뺄셈, 곱셈, 나눗셈이 있습니다. 일부 어려운 숫자, 문자 및 한자의 경우 바퀴를 직접 만들 수도 있습니다. (위와 같은) 하지만 더 많은 것은 인공 지능을 작성하는 것만으로도 충분합니다... (인증 코드를 인식하는 직업이 있습니다...)
그리고 작은 팁: 일부 웹 사이트에는 인증 코드가 있습니다. PC 쪽에서는 있지만 휴대폰 쪽에서는 그렇지 않습니다...
다음 주제!
또 다른 일반적인 크롤링 방지 전략은 일반적으로 짧은 시간에 너무 많은 방문이 차단됩니다. 매우 간단합니다. 방문 빈도를 제한하거나 IP 프록시 풀을 추가하십시오. 물론 배포도 사용할 수 있습니다...
IP 프록시 풀 -> Google로 왼쪽으로 우회하면 바이두로 갈 수 있습니다. . 무료로 사용할 수 있는 것은 많지 않지만, 결국은 괜찮습니다.
크롤러 방지 전략으로도 간주할 수 있는 또 다른 전략은 비동기 데이터입니다. 크롤러가 점차 심화됨에 따라(당연히 웹사이트의 업데이트입니다!) 비동기 로딩은 반드시 직면하게 될 문제이며, 해결책은 여전히 F12입니다. 익명의 NetEase Cloud Music 웹사이트를 예로 들어보겠습니다. 소스 코드를 열기 위해 마우스 오른쪽 버튼을 클릭한 후 댓글을 검색해 보세요
JS와 Ajax가 등장한 이후의 비동기 로딩의 특징은 무엇입니까?! . 하지만 F12를 열고 NetWork 탭으로 전환한 다음 페이지를 새로 고치고 주의 깊게 검색하면 비밀이 없습니다.
아, 그런데 음악을 듣고 계시다면 클릭하시면 다운로드가 가능합니다...
웹사이트의 구조를 대중화하기 위한 것일 뿐입니다. 저작권을 보호하고 원작자의 이익을 보호합니다.
이 웹사이트가 당신을 제한한다면 어떻게 해야 할까요? 우리에게는 무적의 조합인 셀레늄 + PhantomJs가 있습니다.
이 조합은 매우 강력하며 브라우저 동작을 완벽하게 시뮬레이션할 수 있습니다. 특히 이 방법은 Baidu를 참조하세요. 이는 권장되지 않습니다. 이는 대중 과학에만 해당됩니다.
위 내용은 크롤러 및 웹사이트 크롤링 방지 메커니즘 우회에 대한 간략한 논의의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

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

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

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

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

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

뜨거운 주제











Python 크롤러를 배우는 데 걸리는 시간은 사람마다 다르며 개인의 학습 능력, 학습 방법, 학습 시간 및 경험과 같은 요소에 따라 다릅니다. Python 크롤러를 배우는 것은 단순히 기술 자체를 배우는 것이 아니라 좋은 정보 수집 기술, 문제 해결 기술 및 팀워크 기술도 필요합니다. 지속적인 학습과 실습을 통해 점차 뛰어난 Python 크롤러 개발자로 성장하게 될 것입니다.

디지털 시대에 소셜 미디어는 사람들의 삶에 없어서는 안 될 존재가 되었습니다. 트위터는 그 중 하나이며, 수억 명의 사용자가 매일 다양한 정보를 공유하고 있습니다. 일부 조사, 분석, 홍보 및 기타 요구사항의 경우 트위터에서 관련 데이터를 얻는 것이 매우 필요합니다. 이 기사에서는 PHP를 사용하여 키워드 관련 데이터를 크롤링하고 데이터베이스에 저장하는 간단한 Twitter 크롤러를 작성하는 방법을 소개합니다. 1. 트위터에서 제공하는 TwitterAPI

크롤러 개발에서는 쿠키 처리가 필수적인 부분인 경우가 많습니다. HTTP의 상태 관리 메커니즘인 쿠키는 일반적으로 사용자 로그인 정보와 동작을 기록하는 데 사용됩니다. 쿠키는 크롤러가 사용자 인증을 처리하고 로그인 상태를 유지하는 데 핵심입니다. PHP 크롤러 개발에서 쿠키를 처리하려면 몇 가지 기술을 익히고 몇 가지 함정에 주의를 기울여야 합니다. 아래에서는 PHP에서 쿠키를 처리하는 방법을 자세히 설명합니다. 1. PHP로 작성할 때 쿠키를 얻는 방법

PHP 크롤러에 대한 일반적인 문제 분석 및 해결 방법 소개: 인터넷의 급속한 발전으로 인해 네트워크 데이터 수집은 다양한 분야에서 중요한 연결 고리가 되었습니다. 널리 사용되는 스크립팅 언어인 PHP는 데이터 수집에 있어 강력한 기능을 갖추고 있습니다. 일반적으로 사용되는 기술 중 하나는 크롤러입니다. 그러나 PHP 크롤러를 개발하고 사용하는 과정에서 종종 몇 가지 문제에 직면하게 됩니다. 이 기사에서는 이러한 문제에 대한 솔루션을 분석 및 제공하고 해당 코드 예제를 제공합니다. 1. 대상 웹 페이지의 데이터를 올바르게 구문 분석할 수 없는 문제에 대한 설명입니다.

자바 크롤러 실습: 웹페이지 데이터를 효율적으로 크롤링하는 방법 소개: 인터넷의 급속한 발전으로 인해 다양한 웹페이지에는 수많은 귀중한 데이터가 저장되어 있습니다. 이 데이터를 얻으려면 각 웹 페이지에 수동으로 액세스하여 정보를 하나씩 추출해야 하는 경우가 많으며 이는 의심할 여지 없이 지루하고 시간이 많이 걸리는 작업입니다. 이 문제를 해결하기 위해 사람들은 다양한 크롤러 도구를 개발했으며 그중 Java 크롤러가 가장 일반적으로 사용되는 것 중 하나입니다. 이 기사에서는 독자들이 Java를 사용하여 효율적인 웹 크롤러를 작성하는 방법을 이해하고 특정 코드 예제를 통해 실습을 보여줄 것입니다. 1. 파충류의 기초

인터넷 기술의 급속한 발전으로 인해 웹 애플리케이션은 일상 업무와 생활에서 점점 더 많이 사용되고 있습니다. 웹 애플리케이션 개발 과정에서 웹 페이지 데이터를 크롤링하는 것은 매우 중요한 작업입니다. 시중에는 많은 웹 스크래핑 도구가 있지만 이러한 도구는 그리 효율적이지 않습니다. 웹페이지 데이터 크롤링의 효율성을 높이기 위해 PHP와 Selenium을 함께 사용할 수 있습니다. 먼저, PHP와 Selenium이 무엇인지 이해해야 합니다. PHP는 강력하다

주식시장은 언제나 큰 관심의 대상이었습니다. 매일의 주식 상승, 하락 및 변동은 투자자의 결정에 직접적인 영향을 미칩니다. 주식 시장의 최신 동향을 이해하려면 적시에 주식 정보를 얻고 분석해야 합니다. 전통적인 방법은 주요 금융 웹사이트를 수동으로 열어 주식 데이터를 하나씩 보는 것이었습니다. 이 방법은 확실히 너무 번거롭고 비효율적입니다. 현재 크롤러는 매우 효율적이고 자동화된 솔루션이 되었습니다. 다음으로, 주식 데이터를 얻기 위해 PHP를 사용하여 간단한 주식 크롤러 프로그램을 작성하는 방법을 보여드리겠습니다. 허용하다

Bilibili는 중국에서 인기 있는 연발 비디오 웹사이트이기도 하며, 모든 종류의 데이터를 담고 있는 보물창고이기도 합니다. 그중에서도 사격 데이터는 매우 귀중한 자원이기 때문에 많은 데이터 분석가와 연구자들이 이 데이터를 얻기를 희망하고 있습니다. 이 기사에서는 Bilibili 사격 데이터를 크롤링하기 위해 PHP 언어를 사용하는 방법을 소개합니다. 준비 작업 사격 데이터 크롤링을 시작하기 전에 PHP 크롤러 프레임워크 Symphony2를 설치해야 합니다. 다음 명령어를 통해 들어갈 수 있습니다
