c# - 从自定义属性获取 img 链接
问题描述
从下面的 html 我想https://images-na.ssl-images-amazon.com/images/I/810ot%2B%2BnomL._SL1500_.jpg
从属性中获取图像链接data-old-hires
。我已经尝试过像下面这样但我收到错误说:System.NullReferenceException: 'Object reference not set to an instance of an object.'
C#
string html = raw_html;//html example provided bellow
HtmlDocument htmlDoc1 = new HtmlDocument();
htmlDoc1.LoadHtml(html);
string img_link = htmlDoc1.DocumentNode.Attributes["data-old-hires"].Value;//i want to get img link: https://images-na.ssl-images-amazon.com/images/I/810ot%2B%2BnomL._SL1500_.jpg
html:
<img alt="BEARCUBS Kids Foldable Toy Chest - Storage and Organization Toy Box with Lid Organizer Trunk for Nursery Playroom - Cute Animal Decor for Boys and Girls Large Toy Bin (Crab)" src="https://images-na.ssl-images-amazon.com/images/I/41IzB6EFA%2BL._SX300_SY300_QL70_FMwebp_.jpg" data-old-hires="https://images-na.ssl-images-amazon.com/images/I/810ot%2B%2BnomL._SL1500_.jpg" onload="markFeatureRenderForImageBlock(); this.onload='';setCSMReq('af');if(typeof addlongPoleTag === 'function'){ addlongPoleTag('af','desktop-image-atf-marker');};setCSMReq('cf')" data-a-image-name="landingImage" class="a-dynamic-image a-stretch-vertical" id="landingImage" data-a-dynamic-image="{"https://images-na.ssl-images-amazon.com/images/I/810ot%2B%2BnomL._SX679_.jpg":[679,679],"https://images-na.ssl-images-amazon.com/images/I/810ot%2B%2BnomL._SX522_.jpg":[522,522],"https://images-na.ssl-images-amazon.com/images/I/810ot%2B%2BnomL._SY355_.jpg":[355,355],"https://images-na.ssl-images-amazon.com/images/I/810ot%2B%2BnomL._SY450_.jpg":[450,450],"https://images-na.ssl-images-amazon.com/images/I/810ot%2B%2BnomL._SX569_.jpg":[569,569],"https://images-na.ssl-images-amazon.com/images/I/810ot%2B%2BnomL._SX425_.jpg":[425,425],"https://images-na.ssl-images-amazon.com/images/I/810ot%2B%2BnomL._SX466_.jpg":[466,466]}" style="max-width:679px;max-height:679px;">
解决方案
推荐阅读
- android - 我想要全屏图像,但图像在屏幕中与其他布局共享
- ios - iOS AdMob - 适用于生产,而非测试广告
- c# - 类似于 Windows 中的便笺的 C# 文本框
- node.js - 并行和顺序排队
- architecture - 在学术界完成 MVP 后评估创建用例图的有用性
- android - 将所有标记为回收器视图android的读取按钮
- python - 如何在 Tkinter 中显示对类对象的每一次更改?
- django - 使用 django-cassandra-engine 时如何在 Cassandra 中存储媒体文件的路径?
- swift - 如何在同一天保存 CoreData 对象?
- c# - 有没有一种方法可以在不使用 APi 网关架构的情况下使用 Jwt 保护微服务端点