0

我正在尝试自动化页面搜索结果并使用 C# 将结果放入 JSON 或 CSV 文件中。

大纲是:

  1. 转到网页。
  2. 更改日期(HTML 输入修改)
  3. 选择城市(HTML多选修改)
  4. 点击提交按钮(名为提交的 HTML 按钮)
  5. 获取结果
  6. 单击下一步以获取下一页结果

我可以获得初始页面(第 1 步),但我不明白哪些实用程序可用于更新 HTML 并单击按钮。

源代码如下:

async static void Function1()
{
    using (HttpClient client = new HttpClient())
    {
    using (HttpResponseMessage response = await client.GetAsync("http://bla.com/searches/index"))
    {
        using (HttpContent content = response.Content)
        {
        string mycontent = await content.ReadAsStringAsync();
        Console.WriteLine(mycontent);

        // Set the date in the input box:
        //     <input id="sdate" name="sdate" value="10/28/2018" ... />
        // Set value of city in multi-select:
        //     <select id="city" name="city" ...> ...
        // Click on the submit button to get results:
        //     <button type="submit" name="Submit" ...

        // TO DO: Write source code here.


        }
    }
    }
}

什么是一个很好的资源或阅读以了解如何在 Web 浏览器中使用鼠标和键盘来完成这些步骤?

4

1 回答 1

1

这里有两条主要路线。您要么找出搜索页面用于与其后端服务器通信的协议并尝试直接与之通信,要么使用控制浏览器的自动化工具。

第二种路径通常更容易,使用的工具是 selenium。

我建议你使用Coypu,它是一个围绕 selenium 的 .NET 包装器。我们主要将它用于端到端测试,但偶尔也用于 Web 自动化任务。

无论您在我们的浏览器中使用鼠标和键盘做什么,Coypu 脚本都可以自动完成。

于 2018-12-29T07:36:26.120 回答