簡體   English   中英

如何將 python 與 Xamarin Android 應用程序集成以進行網絡抓取

[英]How to integrate python with a Xamarin Android App for web-scraping

我和一個朋友有一個想法,要構建某種網絡抓取軟件,最終我們選擇了一個移動應用程序(Android)。 主要思想是:我們為用戶提供一個音樂節列表,用戶選擇一個,當他選擇時,顯示該音樂節當前確認的藝術家列表(我們希望它顯示一個最新列表)。 該列表是通過 python 腳本檢索的(請注意,目標不是部署或利潤(至少現在),因此這是非常概括的解釋)。

我的問題是,我將如何將 python 腳本與移動應用程序集成? 目前我知道你可以用 C# 調用它們,但我不確定這是否適用於移動環境。 另外,我看到有人說應該將腳本托管在 Web 服務器上,然后通過 API 調用執行它們,但該人沒有擴展,我不知道該怎么做。

對此事的任何見解或有用的參考資料都會有所幫助。 謝謝!

您可以使用 HttpClient 和 HtmlAgilityPack 在 C# 中完成; 你需要:

using System.Net.Http;
using HtmlAgilityPack;

制作這樣的方法:

public static HtmlNode GetNodeById(HttpClient client, string url, string divId)
{
    string pageHtml = "";
    using (HttpResponseMessage response = client.GetAsync(url).Result)
    {
        using (HttpContent content = response.Content)
        {
            pageHtml =  content.ReadAsStringAsync().Result;
        }
    }

    var doc = new HtmlDocument();
    doc.LoadHtml(pageHtml);
    HtmlNode node = doc.GetElementbyId(divId);
    return node;
}

並像這樣調用(其中“musiciansDiv”是包含您的應用程序所需信息的 div):

static HttpClient client = new HttpClient();
var musicians = GetNodeById(client, "http://gigs.example.com", "musiciansDiv");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM