【解決方法】windows 運行 appium 提示 OSError: [WinError 10049] 在其上下文中,該請求的地址無效

背景

我一般運行 appium 都是在 osx 或者 linux 上面,最近在教幾個同事使用 appium 做些自動化(爬蟲)的事,有幾個人使用的是 windows,配置環境搞了很久,服務跑起來了之後,用代碼運行,又報了上面標題的錯誤。

問題分析

首先判斷,這是一個 python 的錯誤,也就是說,不是 appium 本身的問題,那就從兩點開始分析,要麼是系統環境問題,要麼是哪裏的配置問題。

先從配置的問題開始下手,畢竟新手一般都容易犯一些低級錯誤。但是拿着同事的代碼在另一位同事的機器(osx)上跑,怎麼都可以。

奇怪。

那難道是系統的問題?確實,人家錯誤信息也提示了,就是個 WinError,但是如何下手呢?

網上查到關於這個問題的描述都是 bindIp 的時候報的錯,那就從 ip 下手開始搞吧。

先看下與 ip 相關的代碼:

...
APPIUM_HOST = 'http://0.0.0.0:%s/wd/hub'
driver = webdriver.Remote(AndroidEnum.APPIUM_HOST % self.host, self.desired_caps)
...

解決方法

破案了,就是上面的 ip 問題,把 0.0.0.0 改爲 127.0.0.1 正常運行了。

不過這裏比較奇怪的就是,爲什麼在 osx 上可以正常運行,而在 windows 上就報錯呢?

而且 0.0.0.0127.0.0.1 具體又有什麼區別呢?

希望大佬來上上課。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章