
파이써닉 AI 크롤러 타르핏
Pyison은 AI 웹 크롤러를 위한 타르핏(tarpit)입니다
이 프로젝트를 로컬 폴더에 클론합니다.
config/config.json 파일에서 설정을 변경합니다.
random-seed를 임의의 숫자로 설정하세요!port 번호를 설정하세요.(선택 사항이지만 권장) HTML 템플릿, CSS, 이미지 및 robots.txt를 원하는 대로 수정하세요.
(선택 사항) 영향을 받는 봇을 변경하려면 robots.txt를 편집하세요.
아래 방법 중 하나로 서버 환경을 설정하세요.
서버를 리버스 프록시 뒤에 배치하세요.
pip install nltkpython3 src/server.pyhttp://localhost:<your port number> 열기이 콘텐츠를 제공하려면 리버스 프록시를 사용하는 것이 적극 권장됩니다. 리버스 프록시는 페이지 캐싱과 속도 제한 도입으로 서버 부하를 줄일 수 있을 뿐만 아니라 HTTPS로 콘텐츠를 제공하고 일부 기본적인 웹 서버 취약점으로부터 보호할 수 있습니다.
User-Agent HTTP 헤더를 NPM에서 Pyison 서버로 전달해야 합니다. 필요한 경우 proxy_pass_header User-Agent;를 사용하세요.UI에서 다음 설정을 선택하거나 구성 파일에 동일한 설정을 입력하세요:
tarpit.example.com과 같이 사용자가 제어하는 도메인 또는 서브도메인httplocalhost 또는 docker 네트워크를 사용하는 경우 docker 컨테이너 이름80)Cache Assets 및 Block Common Exploits를 활성화하되, Websockets Support는 활성화하지 마세요.하위 경로에서 Pyison을 사용하려면 다음 location 구성을 사용하세요.
# Handles the root page ("example.com/tarpit")
location /tarpit {
proxy_pass http://localhost:80;
}
# Handles all sub-pages ("example.com/tarpit/a" and "example.com/tarpit/a/b")
location /tarpit/ {
proxy_pass http://localhost:80;
}
# Handles all urls with a 3-letter file extension ("example.com/tarpit/style.css" and "example.com/tarpit/images/picture.jpg")
# Note that the ~ denotes regex matching. The string immediately following it must be a valid regex statement.
location ~ .*\/tarpit\/.*\....$ {
proxy_pass http://localhost:80;
}
다음은 UI를 사용한 작동 설정입니다:
/tarpit에는 사용자 지정 구성이 없습니다. 위에 정의된 첫 번째 location 블록처럼 동작합니다./tarpit/에는 위에 정의된 두 번째 및 세 번째 location 블록이 포함됩니다.tarpit을 원하는 루트 경로로 바꾸세요.
/tar/pit과 같은 더 깊은 루트 경로를 사용하는 경우, 세 번째 location 블록은 정규식을 사용하므로 모든 슬래시는 백슬래시로 이스케이프해야 합니다.
/tar/pit은 세 번째 location 블록에 가 필요합니다.port (기본값 80)
random-seed (반드시 변경하세요!)
document-root (기본값 "/")
https://example.com/pyison/ 또는 /pyison/fake-image-dir (기본값 ["images"])
fake-css-dir (기본값 ["css"])
spacing-characters (기본값 ["_","-","%20"])
unsafe-characters (기본값 ["'","`"])
{HOME}
{TITLE}
/blog/about/once-upon-a-time -> Once Upon A Time{UPTITLE}
{MAIN}
{UP}
/blog/about/once-upon-a-time -> /blog/about{CSSLINK}
/styles)는 구성에서 설정할 수 있습니다.
템플릿을 수정하기 전 사이트의 모습을 보여주는 샘플입니다:

services:
pyison:
image: "ghcr.io/jonaslong/pyison:main"
container_name: pyison
tty: true
ports:
- 80:80
docker compose up
-d 플래그를 사용하여 컨테이너에서 분리합니다.docker run --tty --name pyison -p "127.0.0.1:80:80" --rm ghcr.io/jonaslong/pyison:main
--rm 플래그를 제거하여 컨테이너를 유지합니다.docker build -t pyison:latest .docker run --tty --name pyison -p "127.0.0.1:80:80" --rm pyison:latestlocation ~ .*\/tar\/pit\/.*\....$document-root 설정을 업데이트하세요(구성 섹션 참조).robots-txt (기본값 "assets/robots.txt")
/robots.txt에서 제공되는 파일을 구성합니다.html-templates (기본값 ["assets/template.html"])
css-files (기본값 ["assets/style.css"])
images
ico (기본값 ["assets/logo.ico"])jpg (기본값 ["assets/logo.jpg"])png (기본값["assets/logo.png"])remove-from-stop-words
{WORD}
{NAME}
{SENTENCE}
{PIC}
/images)는 구성에서 설정할 수 있습니다.{LINK}
/dressage/electrochronometer/himself-she-eciliate{OVER}
/neighborliness/wont_unhonest를 방문할 때 {OVER} 태그는 /neighborliness/hooliganism으로 대체될 수 있습니다.{NEWTITLE}
Nectarial Electrofusion Which Dephosphorization{LINK} 또는 {OVER} 태그 뒤에 오면 제목과 URL이 동기화됩니다.
<a href="https://github.com/jonaslong/pyison/blob/main/%7BOVER%7D">{NEWTITLE}</a>는 <a href="https://github.com/jonaslong/pyison/blob/main/swordmanship/yeller/over-will-oghuz">Over Will Oghuz</a>로 대체될 수 있습니다.{NEWTITLE} 태그는 동기화할 가장 가까운 {LINK} 또는 {OVER} 태그를 역방향으로 검색합니다.
{NEWTITLE}이 필요한 경우 {LINK} 또는 {OVER} 태그 바로 뒤에 해당 태그가 오면 태그는 항상 올바르게 쌍을 이룹니다.{NEWTITLE}