我的要求是将网页上数据集的“创建日期”/“修改日期”转换为 .xls 或 .csv 文件。
从这个网页,我想导入创建日期,您可以使用 SSIS 中的脚本任务在右侧看到该日期。
我试过使用 excel data -> import from web 。它不起作用!
如果有人对此有任何建议,那将有很大帮助。
谢谢
我的要求是将网页上数据集的“创建日期”/“修改日期”转换为 .xls 或 .csv 文件。
从这个网页,我想导入创建日期,您可以使用 SSIS 中的脚本任务在右侧看到该日期。
我试过使用 excel data -> import from web 。它不起作用!
如果有人对此有任何建议,那将有很大帮助。
谢谢
SSIS 没有任何东西可以解析这样的网页。也就是说,我希望你喜欢 .NET 编码。
我已经对Html Agility Pack做了类似的事情,通过他们的文档和示例来了解如何使用他们的库解析 HTML 的基础知识。
一旦你解决了这个问题,确定你想要的元素的路径就很简单了。我找到了使用 Chrome 打开页面的最佳方法,右键单击感兴趣的内容并选择“检查元素”。展开字段,直到你找到你想要的东西,然后在检查器窗口中右键单击并选择Copy XPath
这导致以下 xpath 选择器
//*[@id="aboutSection"]/div/div/div/div[1]/p[1]/span/span
然后我会在代码中使用它
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(this.html);
string createDate = string.Empty;
createDate = doc.DocumentNode.SelectSingleNode("//*[@id="aboutSection"]/div/div/div/div[1]/p[1]/span/span").InnerText.Trim();
您需要摆弄 SelectSingleNode 调用的确切机制,但这是一般概念。您可能还注意到您有一个属性 data-rawdatetime ,其中有一个值。我猜那是纪元日期,但如果您可以将其转换为“2011 年 10 月 20 日”的呈现值,您可能会更好,因为该数值不会依赖于区域设置。