繁体   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