python?rpyc客戶端調用服務端方法的注意說明
2022-06-18 12:01:06 來源:易采站長站 作者:
目錄
python rpyc客戶端調用服務端方法問題1問題2python rpyc的使用心得python>
使用rpyc遇到兩個問題:
問題1
client調用server的exposed_xxxx()方法時傳進去的參數類型,到了server端會改變,
打印出來是<netref>
解決方法:
def exposed_clentA_will_use(self, hello): ? ? hello = rpyc.classic.obtain(hello)
這樣就把傳進來的hello轉變為本地類型,如果本地沒有這種類型,需要創建這種類型
比如傳進來的是<class 'numpy.ndarray'>類型,但是server本地沒有,則需要import numpy
問題2
client調用server的方法時有報錯ValueError:>
解決方法:
rpyc_config = rpyc.core.protocol.DEFAULT_CONFIG rpyc_config['allow_pickle'] = True? host_ip = '127.0.0.1'? conn = rpyc.connect(host_ip, port = 33333, config = rpyc_config)
由于是不安全的協議,需要手動允許pickle
字面意思也明確了:allow_pickle
python>
6月份,在公司做APP和Web自動化測試開發,碰到一個比較棘手的問題是:APP需要和Web一起操作才能走完整個測試流程。
但是APP和Web使用的是不同的測試工具,Appium和Selenium,測試框架也是獨立的。如何把二者整合起來呢?
沒錯,python rpyc模塊派上用場了,這里使用python rpyc對Web頁面相關的操作做了二次封裝。
from rpyc import Service from rpyc.utils.server import ThreadedServer class MyService(Service): ? ? def exposed_bid(xxx): ? ? ? ? back_page.bid(xxx) s=ThreadedServer(MyService,port=12233,listener_timeout=300,auto_register=False) s.start()
在APP自動化測試腳本里面,這樣調用即可:
c = rpyc.connect('localhost',12233) c.root.bid(xxxx)
但是在APP測試腳本運行過程中,會出現rpyc調用超時的情況,這是因為rpyc默認的調用等待時間只有30s,如果某些rpyc調用的等待時間超過30s就會報錯,解決方法很簡單,在rpyc包的protocol.py文件中找到
SYNC_REQUEST_TIMEOUT,改大即可。
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持易采站長站。
如有侵權,請聯系QQ:279390809 電話:15144810328
最新圖文推薦
相關文章
-
Pycharm永久激活教程(適用jetbrains全系列產品:Pycharm、Idea、WebStor
一.激活前注意事項 1.PyCharm盡量在官網下載:https://www.jetbrains.com/pycharm/download/ 2.本教程適用于PyCharm所有版本 3.本教程適用于jetbrains全系列產品(Pycharm、Idea、WebStorm、phpstorm、CLion、Rub2020-06-26
-
python+opencv+caffe+攝像頭做目標檢測的實例代碼
首先之前已經成功的使用Python做圖像的目標檢測,這回因為項目最終是需要用攝像頭的, 所以實現攝像頭獲取圖像,并且用Python調用CAFFE接口來實現目標識別 首先是攝像頭請選擇支持2020-06-22
-
pycharm中導入模塊錯誤時提示Try to run this command from the system ter
pycharm中導入模塊錯誤時,提示:Try to run this command from the system terminal. Make sure that you use the correct version of ‘pip' installed for your Python interpreter located atpycharm工作路徑。 安裝好pycharm,而且2020-03-26
-
Python如何爬取微信公眾號文章和評論(基于 Fiddler 抓包分析)
背景說明 感覺微信公眾號算得是比較難爬的平臺之一,不過一番折騰之后還是小有收獲的。沒有用Scrapy(估計爬太快也有反爬限制),但后面會開始整理寫一些實戰出來。簡單介紹下本次2020-06-19