這是用於存檔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
一個故事的ittem_id在其URL中:http: http://www.writing.com/main/interact/item_id/$(THIS_IS_THE_ITEM_ID)/map/14411122
要獲取適當的URL,請首先在頁面左上方的文本框中輸入搜索詞,然後按Enter(或單擊放大鏡)。您將被帶到搜索結果頁面。在此頁面上,您將在頂級中心看到您的搜索詞。在此右邊是一個下拉列表,默認情況下說“要閱讀的東西”。在該下拉列表上,選擇“互動”,然後在其下方單擊“ 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文件在當前的shell session中交互方式運行writing.com-archival容器。請勿將git用於bash運行此命令。