Прежде всего, это соответствующий необработанный HTML, который вы получите из ответа.
Фрагмент HTML для монеты в первых 10 строках
10
</td>
<td class="no-wrap currency-name" data-sort="Tether">
<img src="https://s2.coinmarketcap.com/static/img/coins/16x16/825.png" class="logo-sprite" alt="Tether" height="16" width="16">
Фрагмент HTML длямонета после 10-й строки
11
</td>
<td class="no-wrap currency-name" data-sort="TRON">
<img data-src="https://s2.coinmarketcap.com/static/img/coins/16x16/1958.png" class="logo-sprite lazyload" alt="TRON" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" height="16" width="16">
В основном сервер отправляет два разных формата данных.Один для строки 1-10, а другой для строки> 10. Как и строки 1-10, получают атрибут src, но со строки 11-го вы получаете атрибут src как base64 и data-src.Но я вижу, что атрибут data-src, наконец, применяется к атрибуту src на стороне браузера.
Следующий вопрос должен заключаться в том, почему он это делает?
Я думаю, что целью здесь является показать данные как можно быстрее, что-то похожее на прогрессивную загрузку.Я не могу рассуждать об эффективности этой схемы, может быть, у вас есть размер страницы 10 в некоторых форматах отображения.
Таким образом, в основном строки 1-10 имеют окончательный HTML-код для рендеринга в браузере, но в строке 11-й и далее магия происходит со сценарием Java.Теперь java-скрипт минимизирован и сжат, но я предполагаю, что следующие фрагменты (использующие изображение для лучшего представления) переносят значение атрибута data-src в атрибут src.
Сказав все это, я думаю, что безопасный способ отказаться - это использовать
- Использовать значение атрибутаof data-src
- Если data-src недоступен, используйте атрибут src.
И это источник или html, который будет видеть лоскут.
Также src для строки 11 и более с "data: image / gif; base64, R0lGODlhAQABAAAAACH5BAEKAAAALAAAAAABAAEAAAICTAEAOw ==" является своего рода размещенным изображением держателя, я думаю, все онитакие же, и кажется, 1x1 пикселей.