claude-skill-weidu은(는) 무엇을 하나요?
Claude Code에서 mp.weixin.qq.com 공식 계정 기사를 차단당하지 않고 읽습니다. PowerShell HttpWebRequest 원시 바이트 + 이중 컨테이너(js_content / content_noencode) 폴백 방식으로 안정적으로 반크롤링을 우회합니다.
개요
이 기술 스크립트는 mp.weixin.qq.com에서 공식 계정 기사를 안정적으로 가져오기 위해 설계되었습니다. Windows PowerShell의 HttpWebRequest를 사용하여 HTTP 요청을 보내고, 원시 바이트 수준에서 응답을 읽은 후 UTF-8로 변환합니다. 또한 js_content 및 content_noencode 두 컨테이너를 지원하여 일부 기사가 특정 컨테이너 형식으로 제공될 때 폴백 메커니즘을 제공합니다. 이를 통해 일반적인 반크롤링 메커니즘을 우회하고 안정적인 기사 콘텐츠 읽기를 보장합니다.
주요 기능
- HttpWebRequest 원시 바이트 읽기: Windows PowerShell의
System.Net.HttpWebRequest클래스를 사용하여 HTTP 요청을 보내고GetResponse()메서드를 호출하여 응답을 가져옵니다. 그런 다음GetResponseStream()메서드를 사용하여 응답 본문을 가져오고MemoryStream+StreamReader를 통해 바이트 단위로 읽고 UTF-8 문자열로 변환합니다. - 듀얼 컨테이너 폴백 지원: 일부 기사는
js_content또는content_noencode컨테이너로 제공될 수 있습니다. 이 기술은 HTML에서 해당 컨테이너의 콘텐츠를 정규식으로 추출하여 폴백 메커니즘을 구현합니다. - 간단하고 효율적: 단일 PowerShell 명령만으로 기사를 읽을 수 있어 복잡한 설정이나 타사 라이브러리가 필요하지 않습니다.
사용 방법
- Claude Code가 Windows 환경에서 실행 중인지 확인하십시오.
- Claude Code에게 다음 형식으로 명령을 내리십시오:
PowerShell을 사용하여 mp.weixin.qq.com 기사 내용을 가져와 주세요: [기사 URL]
Claude Code는 자동으로 다음 명령을 생성하고 실행합니다:
$url = "[기사 URL]"
$request = [System.Net.HttpWebRequest]::Create($url)
$request.Method = "GET"
$request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"
$response = $request.GetResponse()
$responseStream = $response.GetResponseStream()
$memoryStream = New-Object System.IO.MemoryStream
$responseStream.CopyTo($memoryStream)
$bytes = $memoryStream.ToArray()
$encoding = [System.Text.Encoding]::UTF8
$htmlContent = $encoding.GetString($bytes)
# js_content 컨테이너 추출 시도
if ($htmlContent -match 'var\s+js_content\s*=\s*"([^"]+)"\s*\|\|\s*""') {
$content = $matches[1]
if ([string]::IsNullOrEmpty($content)) {
if ($htmlContent -match 'var\s+content_noencode\s*=\s*"([^"]+)"') {
$content = $matches[1]
}
}
Write-Output $content
}
지원 플랫폼
- Windows (PowerShell 5.1 이상)
- Claude Code
주의 사항
- 이 기술은 교육 및 연구 목적으로만 설계되었습니다. 실제 사용 시 위챗 공식 계정의 서비스 약관을 준수하십시오.
- 기사 URL이 유효하고 대상 기사가 공개 상태인지 확인하십시오.
- 일부 기사는 저작권 또는 기타 이유로 인해 정상적으로 읽히지 않을 수 있습니다. 이 경우 다른 방법을 사용하여 접근하십시오.