Как имитировать вкладку FireFox NET в C # / ASP.NET

#c# #asp.net #http

#c# #asp.net #http

Вопрос:

Я хотел бы создать веб-страницу, на которой вы можете ввести свое доменное имя и попросить его извлечь его и показать вам все ресурсы, время их загрузки и т.д. — аналогично вкладке FireFox NET.

Вот страница, которую я хотел бы эмулировать:http://tools .pingdom.com

Я знаю, что это сложная функция, но я хотел бы услышать общие идеи. Я знаю, что мог бы легко получить HTML-код через WebClient, но это самая простая часть. Мне также нужно извлекать все ресурсы и определять время, а не все одновременно. Я хочу имитировать браузер. Итак, я подумал об использовании чего-то вроде System.Windows.Формы.Веб-браузер, но это действительно даст мне только время загрузки страницы.

У кого-нибудь есть какие-нибудь мысли / советы?

Ответ №1:

Используя Html Agility Pack, вы можете легко найти, на какие внешние ресурсы ссылаются страницы HTML.

Это не скажет вам точно, когда они будут загружены браузером, а также не поможет вам с динамически загружаемыми ресурсами, но это хорошее начало.

Боюсь, единственный способ убедиться в этом — создать экземпляр всего браузера. Вы могли бы использовать подключаемый модуль для прокси-сервера для отладки HTTP Fiddler, чтобы перехватывать запросы от элемента управления WebBrowser, чтобы определить, какие ресурсы фактически загружены в этом случае.