【Python學習】No1.常見錯誤記錄(1)

  1. 【Django】錯誤提示:
    specifying a namespace in include() without providing an app_name
    解決措施:
    python3 Django環境下,如果namespace沒有注冊以及在根目錄下urls.py中的include方法的第二個參數namespace添加之后就出錯的問題,則需要在app_name目錄下的urls.py中的urlpatterns前面加上app_name = '[app_name]',[app_name]代表應用名稱。
    image.png
  2. 【Django】錯誤提示:
    No module named 'django.core.urlresolvers'
    解決措施:
    from django.urls import reverse
    原因就是:django2.0 把原來的 django.core.urlresolvers 包更改為了django.urls包,所以我們需要把導入的包都修改一下就可以了。
  3. 【Django】錯誤提示:
    TypeError: __init__() missing 1 required positional argument: 'on_delete'
    解決措施:
    屬于外鍵的使用問題,需要外鍵中添加on_delete屬性。
    image.png
  4. 【heroku】錯誤提示:
    push到heroku失敗:[remote rejected] master -> master (pre-receive hook declined)
    解決措施:
    根據錯誤提示信息:
    image.png

    修改對應配置:
    image.png
  5. 【scrapy】錯誤提示:
    ```通過pycharm或者pip安裝的scrapy,在創建scrapy項目時總提示“scrapy不是內部或者外部命令”。````
    解決措施:
    首先通過pip uninstall scrapy 將已安裝的卸載,然后從網上下載scrapy.whl文件,手動安裝,問題解決。
  6. 【scrapy】錯誤提示:
    爬蟲出現Forbidden by robots.txt,無法正常運行parse方法
    解決措施:
    在settings.py中將ROBOTSTXT_OBEY 修改為False。
    關于ROBOTSTXT_OBEY :
    在scrapy中創建項目以后,在settings文件中有這樣的一條默認開啟的語句:
    ROBOTSTXT_OBEY = True
    觀察代碼可以發現,默認為True,就是要遵守robots.txt 的規則,那么 robots.txt 是個什么東西呢?
    通俗來說, robots.txt 是遵循 Robot協議 的一個文件,它保存在網站的服務器中,它的作用是,告訴搜索引擎爬蟲,本網站哪些目錄下的網頁不希望你進行爬取收錄。在Scrapy啟動后,會在第一時間訪問網站的 robots.txt 文件,然后決定該網站的爬取范圍。
    當然,我們并不是在做搜索引擎,而且在某些情況下我們想要獲取的內容恰恰是被 robots.txt 所禁止訪問的。所以,某些時候,我們就要將此配置項設置為 False

未完待續... ...

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容