이것은 Writing.com의 대화식 이야기를 보관하기위한 Python3 유틸리티입니다.
스토리를 보관하면 해당 스토리의 모든 장을 다운로드하여 ./archive/<story_id>/
에서 열 수있는 브라우즈 가능한 HTML 파일 세트로. 스토리 업데이트는 새로운 장을 아카이브에 다운로드합니다.
명령 줄 사용 :
$ cd <path-to-source>
$ pip install -r requirements.txt # Install dependencies
$ chmod +x run.py # If the following commands do not work
$ ./run.py get <id1> <id2>... # Downloads or updates interactives with item_ids <id1>, <id2>...
$ ./run.py get_search "<url1>" "<url2>"... # Downloads every interactive in these search results. See note below.
$ ./run.py update # Update existing archives
스토리의 item_id는 url에 있습니다 : http://www.writing.com/main/interact/item_id/$(THIS_IS_THE_ITEM_ID)/map/14411122
적절한 URL을 얻으려면 먼저 검색 용어를 페이지의 왼쪽 상단에있는 텍스트 상자에 입력하고 Enter를 누르십시오 (또는 확대 유리를 클릭하십시오). 검색 결과 페이지로 이동합니다. 이 페이지에는 검색어가 상단 센터에 표시됩니다. 그 오른쪽에는 기본적으로 "읽을 것들"이라는 드롭 다운이 있습니다. 해당 드롭 다운에서 "Interactives"를 선택한 다음 바로 아래의 "GO"버튼을 클릭하십시오. 모든 결과는 이제 대화식이어야합니다. 마지막으로 결과 바로 위의 확대 유리 아이콘을 클릭하여 검색을 다시 시작하십시오. 이제 URL은 get_search의 올바른 형식입니다. ""로 인용하는 것을 잊지 마십시오.
사용자 이름과 로그인의 비밀번호로 config.yaml 편집
Python3 및 requirements.txt
의 패키지가 필요합니다.
스토리를 다운로드하려고하는 동안 오류가 발생할 수 있습니다. 오류가 유틸리티에 충돌하지 않으면 일부 오류가 일시적이므로 유틸리티를 다시 다운로드하는 것이 좋습니다. 그러나 어떤 이야기/챕터에 문제가 있었는지 알려 주시면 내가 할 수있는 일을 볼 것입니다.
오류가 유틸리티에 충돌하면 다시 로그인하는 것이 좋습니다. 가장 좋은 시나리오 로그인이 실패했거나 Writing.com이 세션 서비스를 중단하기로 결정했습니다. session
삭제 ( session.py
가 아님) 및 자격 증명을 다시 요청하게됩니다. 로그인이 성공했는지 여부는 알려주지 않습니다. 여전히 실패하면 알려주세요.
이 유틸리티는 컨테이너에서도 실행할 수도 있습니다. 컨테이너는 유틸리티 실행에 필요한 모든 종속성을 설치하는 것을 처리합니다.
$ cd < path-to-source >
$ docker-compose build
$ docker-compose run writing.com-archival
# After running the above commands, the command line arguments stay the same.
root@writing-com-archival:/code# ./run.py get < id 1> < id 2> ... # Downloads or updates interactives with item_ids <id1>, <id2>...
root@writing-com-archival:/code# ./run.py get_search " <url1> " " <url2> " ... # Downloads every interactive in these search results. See note below.
root@writing-com-archival:/code# ./run.py update # Update existing archives
docker-compose build
-이 명령은 docker-compose.yml 파일을 사용하여 dockerfile 내부에 정의 된 컨테이너를 빌드합니다. docker-compose run writing.com-archival
이 명령은 docker-compose.yml 파일을 사용하여 현재 쉘 세션에서 대화식으로 Writing.com-Archival 컨테이너를 실행합니다. 이 명령을 실행하려면 bash에 git을 사용하지 마십시오.