使用HtmlAgilityPack抓取Ethereum Tokens信息

简介: 使用HtmlAgilityPack抓取Ethereum Tokens信息 class Program { static void Main(string[] args) { try {...

使用HtmlAgilityPack抓取Ethereum Tokens信息

    class Program
    {
        static void Main(string[] args)
        {
            try
            {
                for (int i = 1; i <= 11; i++)
                {
                    string url = "https://etherscan.io/tokens?p="+i;
                    HtmlWeb webClient = new HtmlWeb();
                    HtmlDocument doc = webClient.Load(url);

                    var tbody = doc.DocumentNode.SelectSingleNode("//*[@id='ContentPlaceHolder1_divresult']/table/tbody");
                    var trItems = tbody.SelectNodes("tr");
                    foreach (var tr in trItems)
                    {
                        try
                        {
                            var tdItems = tr.SelectNodes("td");
                            string id = tdItems[0].SelectSingleNode("b//span").InnerHtml.Replace(" ", "");
                            string contractAddress = tdItems[1].SelectSingleNode("a").Attributes["href"].Value.Replace("/token/", "");
                            string tokenLogo = "https://etherscan.io" + tdItems[1].SelectSingleNode("a/img").Attributes["src"].Value;
                            string temp = tdItems[2].SelectSingleNode("h5/a").InnerHtml;
                            string tokenName = temp.Substring(0, temp.IndexOf(" "));
                            string tokenSymbol = temp.Substring(temp.IndexOf("(") + 1, temp.IndexOf(")") - temp.IndexOf("(") - 1);
                            string tokenDescribe = tdItems[2].SelectSingleNode("small/font").InnerHtml;

                            string tokenUrl = "https://etherscan.io/token/" + contractAddress;
                            HtmlWeb webtokenClient = new HtmlWeb();
                            HtmlDocument tokendoc = webtokenClient.Load(tokenUrl);
                            string tokenDecimal = tokendoc.DocumentNode.SelectSingleNode("/html[1]/body[1]/div[1]/div[5]/div[1]/div[2]/table[1]/tr[2]/td[2]").InnerHtml.Replace("\n", "");
                            Console.WriteLine($"{id}\t{contractAddress}\t{tokenSymbol}\t{tokenDecimal}\t{tokenName}\t{tokenLogo}\t{tokenDescribe}\t");
                        }
                        catch (Exception ex)
                        {

                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }
            Console.Read();
        }
    }

博客内容仅代表个人观点,如发现阐述有误,麻烦指正,谢谢!
目录
相关文章
|
7月前
|
缓存 自然语言处理 API
关于 Spartacus 开源 Storefront 在 PWA 模式下运行时的 index.html hash mismatch 问题
关于 Spartacus 开源 Storefront 在 PWA 模式下运行时的 index.html hash mismatch 问题
54 0
|
7月前
|
API
使用 Schematics 创建的 Spartacus Storefront,在 index.html 里指定 OCC API url
使用 Schematics 创建的 Spartacus Storefront,在 index.html 里指定 OCC API url
41 0
|
28天前
|
数据采集 API C#
网页解析高手:C#和HtmlAgilityPack教你下载视频
使用C#和HtmlAgilityPack解析小红书网页,下载其视频内容。文章涵盖了解析网页、获取视频链接、C#实现、HtmlAgilityPack简化解析、代理IP确保下载稳定及多线程提高下载效率。提供的代码示例展示了如何设置代理和多线程下载视频。实验结果显示,该方法能有效、高效地下载小红书视频。
网页解析高手:C#和HtmlAgilityPack教你下载视频
|
6月前
|
数据库 容器
SAP EWM 模块中的 pick 和 Pack 功能
SAP EWM 模块中的 pick 和 Pack 功能
76 0
|
6月前
|
存储 JavaScript 前端开发
如何判断 Spartacus SSR 的 Transfer State 已经正常工作了
如何判断 Spartacus SSR 的 Transfer State 已经正常工作了
37 0
|
11月前
|
开发框架 移动开发 前端开发
如何使用C#和HTMLAgilityPack抓取网页
HTMLAgilityPack是一款备受欢迎的用于解析和操作HTML文档的库。在使用之前,开发者需要考虑一些优缺点。下面是一些值得注意的优点: 1. 强大的错误容忍性 2. 灵活的API 3. 广泛的应用场景 然而,也有一些缺点需要考虑: 1. 性能问题 2. 对最新HTML特性的支持限制 3. 可能存在依赖和冲突
|
JavaScript 前端开发
webpack5不要再用url-loader了
webpack5 新增 Asset Modules 资源模块
207 0
|
JSON JavaScript 数据格式
HackerNews05-通过使用url模块的parse方法获取用户get提交的数据|学习笔记
快速学习 HackerNews05-通过使用url模块的parse方法获取用户get提交的数据
103 0
HackerNews05-通过使用url模块的parse方法获取用户get提交的数据|学习笔记
|
JavaScript 前端开发 API
SAP Spartacus 成功登录之后,请求 base site 到底需不需要 Access Token
SAP Spartacus 成功登录之后,请求 base site 到底需不需要 Access Token
121 0
SAP Spartacus 成功登录之后,请求 base site 到底需不需要 Access Token
|
SEO
SAP Spartacus 在 CSR 模式下启用 SEO HTML tag 的临时方法
SAP Spartacus 在 CSR 模式下启用 SEO HTML tag 的临时方法
141 0
SAP Spartacus 在 CSR 模式下启用 SEO HTML tag 的临时方法

热门文章

最新文章