【관련 학습 추천: 웹사이트 제작 동영상 튜토리얼】
크롤러란 간단하게 일방적으로 말하면 서버와 자동으로 상호 작용하여 작업을 수행하는 도구입니다. 데이터를 얻습니다. 크롤러에 대한 가장 기본적인 것은 웹페이지의 소스 코드 데이터를 얻는 것입니다. 더 깊이 들어가면 웹페이지와 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

React의 인기에는 성능 최적화, 구성 요소 재사용 및 풍부한 생태계가 포함됩니다. 1. 성능 최적화는 가상 DOM 및 Diffing 메커니즘을 통해 효율적인 업데이트를 달성합니다. 2. 구성 요소 재사용은 재사용 가능한 구성 요소에 의해 중복 코드를 줄입니다. 3. 풍부한 생태계와 일원 데이터 흐름은 개발 경험을 향상시킵니다.

React는 동적 및 대화식 사용자 인터페이스를 구축하기위한 선택 도구입니다. 1) 구성 요소화 및 JSX는 UI 분할 및 재사용을 간단하게 만듭니다. 2) State Management는 Usestate 후크를 통해 구현되어 UI 업데이트를 트리거합니다. 3) 이벤트 처리 메커니즘은 사용자 상호 작용에 응답하고 사용자 경험을 향상시킵니다.

React는 사용자 인터페이스를 구축하기위한 프론트 엔드 프레임 워크입니다. 백엔드 프레임 워크는 서버 측 응용 프로그램을 구축하는 데 사용됩니다. React는 구성 및 효율적인 UI 업데이트를 제공하며 백엔드 프레임 워크는 완전한 백엔드 서비스 솔루션을 제공합니다. 기술 스택, 프로젝트 요구 사항, 팀 기술 및 확장 성을 선택할 때는 고려해야합니다.

HTML과 React의 관계는 프론트 엔드 개발의 핵심이며, 현대 웹 애플리케이션의 사용자 인터페이스를 공동으로 구축합니다. 1) HTML은 컨텐츠 구조와 의미를 정의하고 React는 구성 요소화를 통해 동적 인터페이스를 구축합니다. 2) 부품은 JSX 구문을 사용하여 HTML을 포함하여 지능형 렌더링을 달성합니다. 3) 구성 요소 수명주기는 상태 및 속성에 따라 HTML 렌더링 및 업데이트를 동적으로 관리합니다. 4) 구성 요소를 사용하여 HTML 구조를 최적화하고 유지 관리 가능성을 향상시킵니다. 5) 성능 최적화에는 불필요한 렌더링을 피하고 주요 속성 사용 및 구성 요소 단일 책임을 유지하는 것이 포함됩니다.

React는 대화식 프론트 엔드 경험을 구축하는 데 선호되는 도구입니다. 1) 반응은 구성 요소화 및 가상 DOM을 통해 UI 개발을 단순화합니다. 2) 구성 요소는 기능 구성 요소 및 클래스 구성 요소로 나뉩니다. 기능 구성 요소는 더 간단하고 클래스 구성 요소는 더 많은 수명주기 방법을 제공합니다. 3) RECT의 작동 원리는 가상 DOM 및 조정 알고리즘에 의존하여 성능을 향상시킵니다. 4) 주 경영진은 usestate 또는 this.state를 사용하며 ComponentDidMount와 같은 수명주기 방법은 특정 논리에 사용됩니다. 5) 기본 사용에는 구성 요소 생성 및 상태 관리가 포함되며 고급 사용량은 사용자 정의 후크 및 성능 최적화가 포함됩니다. 6) 일반적인 오류에는 부적절한 상태 업데이트 및 성능 문제, 디버깅 기술은 ReactDevTools 사용 및 우수

React는 핵심 구성 요소 및 상태 관리 기능을 갖춘 사용자 인터페이스를 구축하기위한 JavaScript 라이브러리입니다. 1) 구성 요소화 및 상태 관리를 통해 UI 개발을 단순화합니다. 2) 작업 원칙에는 화해 및 렌더링이 포함되며 최적화는 React.Memo 및 Usememo를 통해 구현할 수 있습니다. 3) 기본 사용법은 구성 요소를 작성하고 렌더링하는 것입니다. 고급 사용법에는 후크 및 컨텍스트를 사용하는 것이 포함됩니다. 4) 부적절한 상태 업데이트와 같은 일반적인 오류는 ReactDevTools를 사용하여 디버그 할 수 있습니다. 5) 성능 최적화에는 React.Memo, 가상화 목록 및 코드플릿을 사용하는 것이 포함되며 코드를 읽을 수 있고 유지 관리 가능하게 유지하는 것이 가장 좋습니다.

React는 JSX와 HTML을 결합하여 사용자 경험을 향상시킵니다. 1) JSX는 개발을보다 직관적으로 만들기 위해 HTML을 포함시킨다. 2) 가상 DOM 메커니즘은 성능을 최적화하고 DOM 운영을 줄입니다. 3) 유지 보수성을 향상시키기위한 구성 요소 기반 관리 UI. 4) 상태 관리 및 이벤트 처리는 상호 작용을 향상시킵니다.

반응 구성 요소는 함수 또는 클래스로 정의 할 수 있으며 UI 로직을 캡슐화하고 소품을 통해 입력 데이터를 수락합니다. 1) 구성 요소 정의 : 기능 또는 클래스를 사용하여 반응 요소를 반환합니다. 2) 렌더링 구성 요소 : 반응 호출 렌더 메소드 또는 기능 구성 요소를 실행합니다. 3) 멀티플렉싱 구성 요소 : 소품을 통해 데이터를 전달하여 복잡한 UI를 구축합니다. 구성 요소의 수명주기 접근 방식을 통해 다른 단계에서 논리를 실행하여 개발 효율성 및 코드 유지 관리 가능성을 향상시킬 수 있습니다.


핫 AI 도구

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

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

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

Clothoff.io
AI 옷 제거제

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

인기 기사

뜨거운 도구

VSCode Windows 64비트 다운로드
Microsoft에서 출시한 강력한 무료 IDE 편집기

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

Dreamweaver Mac版
시각적 웹 개발 도구

mPDF
mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.

Atom Editor Mac 버전 다운로드
가장 인기 있는 오픈 소스 편집기
