Как упомянул IanNorton, вам нужно будет запросить URL-адрес, который Icecat использует для загрузки спецификаций с использованием AJAX.Для приведенной вами ссылки-примера URL-адрес сведений о спецификации, который вам нужно будет запросить, будет:
http://icecat.biz/index.cgi?ajax=productPage;product_id=1091664;language=en;request=feature
Затем вы можете пройти через HTML-ответ, чтобы получить сведения о спецификации.вам требуется.
Вы упомянули в своем комментарии, что процесс очистки автоматизирован.URL-адрес спецификации в базовом формате, вам просто нужен идентификатор продукта.Однако, если у вас нет идентификаторов, а всего лишь несколько URL-адресов, как в примере из исходного вопроса, вам нужно получить идентификатор продукта по URL-адресу, который у вас есть.
Например,Пример URL, который вы перенаправили на другой URL:
http://icecat.biz/p/coby/dp102/digital-photo-frames-0716829961025-dp-102-digital-photo-frame-1091664.html
Этот URL-адрес содержит идентификатор продукта, расположенный в конце.
Вы можете сделать HttpWebRequest
на исходный URL-адрес, остановитесь, прежде чем он выполнит перенаправление, и перехватите URL-адрес перенаправления:
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://icecat.biz/en/p/Coby/DP102/desc.htm");
request.AllowAutoRedirect = false;
request.KeepAlive = true;
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
if(response.StatusCode == HttpStatusCode.Redirect){
string redirectUrl = response.GetResponseHeader("Location");
}
Как только вы получите переменную redirectUrl
, вы можете использовать Regex
для получения идентификатора, а затем выполнить другойHttpWebRequest
к подробному URL спецификации.