뒷이야기 :
메가 멀티 코퍼레이션에서 새로운 프로그래밍 작업을 즐길 수 있습니다. 그러나 컴퓨터에는 CLI 만 있기 때문에 웹을 탐색 할 수 없습니다. 또한 모든 직원의 하드 드라이브를 청소할 수 있으므로 대형 CLI 웹 브라우저를 다운로드 할 수 없습니다. 가능한 한 작은 간단한 텍스트 브라우저를 작성하여 암기하고 매일 임시 파일에 입력 할 수 있습니다.
도전:
당신의 임무는 명령 줄 인터페이스 내에서 골프 웹 브라우저를 만드는 것입니다. 다음과 같아야합니다.
- args 또는 stdin을 통해 단일 URL을 가져옵니다.
- URL의 구성 요소
directory
및 분할host
- 에 간단한 HTTP 요청을
host
보내서directory
<p>
단락</p>
태그 의 내용을 인쇄- 종료하거나 다른 페이지를 요청하십시오.
더 많은 정보:
간단한 HTTP 요청은 다음과 같습니다.
GET {{path}} HTTP/1.1
Host: {{host}}
Connection: close
\n\n
줄 바꿈을 강조했다.
일반적인 응답은 다음과 같습니다.
HTTP/1.1 200 OK\n
<some headers separated by newlines>
\n\n
<html>
....rest of page
규칙 :
- 포트 80에서만 작동해야합니다 (SSL 필요 없음)
- netcat을 사용할 수 없습니다
- 어떤 프로그래밍 언어를 사용하든 저수준 TCP API 만 허용됩니다 (netcat 제외).
- GUI를 사용 하지 않을 수도 있습니다 . CLI입니다.
- 내장 파서를 제외하고 HTML 파서를 사용할 수 없습니다 (BeautifulSoup은 내장되지 않습니다)
- 보너스!! 프로그램이 루프백하고 종료하는 대신 다른 URL을 요청하는 경우 -40 문자 (재귀를 사용하지 않는 한)
- 타사 프로그램이 없습니다. 아무것도 설치할 수 없습니다.
- code-golf 이므로 가장 짧은 바이트 수가 이깁니다.
import webbrowser;webbrowser.open(url)