python Pyspider 的各種爬坑之路


  我覺得我有必要寫一下這篇文章,為了學習pyspider,花了一天的時間才把這個環境搭建成功,網上的各種解決辦法都是零零碎碎的,今天我把我掉進的所有坑都和大家分享一下。

  前面一直在學習request pyquery等,今天開始學習了pyspider,關於pyspider,這是國人自己寫的爬蟲腳本,我還沒有用過,不知道怎么樣,今天的主題是怎么去解決所遇到的各種錯誤。使用pyspider首先需要安裝pyspider和PhantomJS,在python 3.7.0 scripts命令行里面輸入

pip install pyspider

  可能會出現以下錯誤

 

  這時需要安裝可以參考一篇博客https://www.cnblogs.com/xyzpeng/p/10630364.html,如果覺得不怎么詳細的話,可以直接百度搜索pyspider安裝錯誤等關鍵詞,把這個問題解決之后,下面才是今天我遇到的最困難的問題,當在命令行輸入pyspider時,會出現關鍵詞async的錯誤,

Traceback (most recent call last):
  File "C:\Users\86134\AppData\Local\Programs\Python\Python37\Scripts\pyspider-script.py", line 11, in <module>
    load_entry_point('pyspider==0.3.10', 'console_scripts', 'pyspider')()
  File "c:\users\86134\appdata\local\programs\python\python37\lib\site-packages\pkg_resources\__init__.py", line 489, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "c:\users\86134\appdata\local\programs\python\python37\lib\site-packages\pkg_resources\__init__.py", line 2793, in load_entry_point
    return ep.load()
  File "c:\users\86134\appdata\local\programs\python\python37\lib\site-packages\pkg_resources\__init__.py", line 2411, in load
    return self.resolve()
  File "c:\users\86134\appdata\local\programs\python\python37\lib\site-packages\pkg_resources\__init__.py", line 2417, in resolve
    module = __import__(self.module_name, fromlist=['__name__'], level=0)
  File "c:\users\86134\appdata\local\programs\python\python37\lib\site-packages\pyspider\run.py", line 231
    async=True, get_object=False, no_input=False):
        ^
SyntaxError: invalid syntax

  這是因為python3.7將async作為關鍵詞了,所以沖突所致,詳細的更改內容請參考https://www.cnblogs.com/xyzpeng/p/10630364.html

  這個問題解決之后,我以為就可以pyspider all成功了,結果真的是我以為的。。。。。。。。,下面又遇到了新困難,我滴天啊,我就想學習一下pyspider知識,有這么難嗎,此處省略一萬句mmp,

當運行pyspider all時候,不報錯了,但是.....,一直卡在這里運行不了了,我.....叫了一聲老天爺,這么折磨我干嘛啊????

  然后,這個問題網上居然沒有解決辦法,查了N次,都沒有用,有的說cmd要管理員運行,有的又這樣解決,然后就很無語,后來找到了一個文章,說是把電腦的防火牆和殺毒軟件關了,是win10自帶的哈,不是360,具體方法自行百度,然后重啟,http://www.freesion.com/article/888054963/,這是原文的連接,可以參考。

  當我關閉防火牆和殺毒軟件之后,發現還是不行????????我就試了幾次smd,試了幾次之后發現居然運行成功了,然后又關掉,然后重新pyspider all,又不行????我又多試了幾次,可以了,這個我就不知道什么原因了,反正是可以正常運行了,然后就進入了localhost:5000網頁里面,按照各種教程開始編程,以為萬事大吉了,誰知道,錯誤又來了。。。。。

  這次的錯誤是

  然后就查了這個錯誤,解決辦法是這個https://cuiqingcai.com/2703.html,安裝完新的pyspider之后,然后參考這篇文章,把這個錯誤解決了。

HTTP 599: SSL certificate problem: self signed certificate in certificate chain 

  我就想這次不可能再有錯了吧,可是。。。錯誤又雙叒叕來了,這次的錯誤是------我就不寫了,直接看一下別人的吧,https://blog.csdn.net/SiHann/article/details/88294054,這是我遇到的最后一個錯誤,說是 node的版本太低造成的,需要重新去下載,然后我就乖乖的下載了一次,node的安裝方法可以參考我的第一篇文章《基於D3的工具配置》,關於如何安裝nodejs都詳細寫在里面我,在這里我就不詳細寫了,解決完整個問題之后,大功告成,成功運行出來,爬取到網頁。

  好啦,這就是我今天遇到的所有坑,所有解決辦法都在里面了,我應該是把所有的問題都遇見了,希望可以幫助到你們哦,有問題的可以直接留言評論哈,如果對各位有幫助的話,可以贊助一下點贊關注一下哈!!今天掉的頭發太多了,感謝各位!!!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM