1

我最近開始使用React Native來處理涉及網絡抓取的應用程序。我們一直在使用一個名爲React Native WebView Bridge的組件,它類似於Obj-C中的UIWebViewBridge庫,但有一些問題。由於React Native是異步的,我們一直無法返回信息,因爲應用程序經常和不可預知地通過WebView Bridge調用渲染功能。有時WebView Bridge模塊會調用我們注入的JavaScript 1次,有時它會調用3次。使用React Native進行Web抓取和注入JavaScript的最佳方法?

有沒有更好的方法來抓取信息並在React Native中有效地注入JavaScript?

下面是我們使用的React Native的WebViewBridge的鏈接。

回答

4

我已經使用cheerio解析來自網站的HTML內容,將其轉換爲JSON並使用它提供React組件。這樣您就可以獲得使用React Native的好處,而不僅僅是一個混合的Web應用程序。

你可以找到這樣的一個它例子陣營原生應用:https://github.com/stan229/ClubReadyApp

+0

你能使用這個 – metacore

+0

你可以對操控更具體一點操縱網頁元素?您不會將HTML呈現給DOM,但是如果您想添加一些屬性(例如,class,id,更改innerHTML),您可以。我遵循的工作流程,通常會建議(不知道你的案例中的所有細節)從HTML文檔中提取需要的數據,使用它來渲染組件並使用React Native處理業務交互。 – stan229

+0

對不起。我操縱的意思是你可以使用這種方法注入JavaScript嗎?例如,點擊一個按鈕或向文本字段輸入內容。我希望能夠在不使用React的render方法多次調用我的注入腳本的情況下執行此操作。這有點清楚嗎? – metacore

相關問題