C#中另辟蹊径解决JSON / XML互转的问题

时间:2022-10-23 13:16:32

C#中另辟蹊径解决JSON / XML互转的问题

最近在一个POC的项目中要用到JSON和XML的相互转换, 虽然我知道很多类库如JSON.NET具备这种功能, 但是我还是另辟蹊径的使用Spider Studio结合一个在线工具网站快速实现了这个功能.

1. 打开Spider Studio, 加载页面 http://www.utilities-online.info/xmltojson/

2. 通过选择页面元素功能找到xml和json两个输入框以及两个相互转换的按钮, 他们的ID分别为: #json, #xml, #tojson, #toxml.

3. 编写脚本自动完成页面操作:

 

测试效果:

C#中另辟蹊径解决JSON / XML互转的问题

4. 通过一点小技巧提高性能

经过观察发现这个网站打开比较慢, 但是一旦打开之后, 处理转换还是挺快的. 因此我决定只在最开始打开一次, 之后直接调用转换功能就成了.

将代码

Default.Navigate("http://www.utilities-online.info/xmltojson");
Default.Ready();

改成

if(Default.Url.ToString() != "http://www.utilities-online.info/xmltojson/")
{
Default.Navigate("http://www.utilities-online.info/xmltojson");
Default.Ready();
}

即可, 测试发现原来需要4s的加载过程现在秒出了 :)

C#中另辟蹊径解决JSON / XML互转的问题

5. 将脚本编译成DLL

C#中另辟蹊径解决JSON / XML互转的问题

6. 创建WinForm程序, 引入DLL

C#中另辟蹊径解决JSON / XML互转的问题

7. 运行起来的效果

C#中另辟蹊径解决JSON / XML互转的问题

8. 和Spider Studio采集以及相关脚本编写的其他文章:

C#代码获取或设置Iframe中的HTML

示例 - C#脚本代码采集搜狐NBA球员, 球队和比赛实况

C#中利用JQuery实现视频网站的缩略图采集

API - 使用Default对象 - 基础篇

示例 - 如何翻页

示例 - 向百度说 Hello world! 并获得回应.

Spider Studio 社区信息

分类: Spider Studio