|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
21.09.2016, 15:46 | #1 |
Пользователь
Регистрация: 09.04.2016
Сообщений: 81
|
xpath-запрос перестал работать
Здравствуйте. До этого момента все было хорошо, но внезапно перестал срабатывать один из xpath-запросов на получение ссылки к изображению на странице с книгой.
сайт litres.ru Код:
Код:
Проверял этот запрос отдельно, не через студию, и все работает нормально. А в самой программе хоть убей, но не хочет. Никаких изменений в код не вносил, он просто внезапно перестал срабатывать. |
21.09.2016, 15:56 | #2 |
Участник клуба
Регистрация: 21.10.2015
Сообщений: 1,361
|
так а где ошибка? она вообще связана с вашим xpath
а если да то смотрите структуру дома вощем у вас вопрос тупо на позырить и понять |
21.09.2016, 15:57 | #3 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Ctrl+U, Ctrl+F, нету там никакого элемента с ID biblio_book_cover_image.
Судя по GetStringAsync().Result и использованию в одной функции HttpClient, а в другой WebClient вы копипастите магические куски кода без полного понимания того, что вы делаете. Так вы далеко не уедете.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
21.09.2016, 16:51 | #4 |
Пользователь
Регистрация: 09.04.2016
Сообщений: 81
|
Да, действительно, теперь этот элемент добавляется с помощью Js. А вчера ничего такого не было. Сделал через регулярку
Код:
И по поводу использования WebClient: я не нашел другого способа сохранения изображений, поэтому использую его для этого. И опять же, если вы их знаете, то поделитесь, буду премного благодарен) |
21.09.2016, 17:00 | #5 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Дык речь не о использовании WebClient, а о том, что в одном месте он, в другом HttpClient, еще в третьем наверняка HttpWebRequest.
+ там вызов DownloadFileAsync, но нет обработки ошибок (исключений) и никто никогда о них не узнает. + другой экземпляр клиента на второй запрос. В данном случае может быть не важно, но часто надо хранить и использовать куки между запросами. + наверняка можно было обойтись без глобальной переменной HD И HttpClient предназначен для асинхронного использования (async/await), если нужны просто синхронные запросы, то проще взять WebClient.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
21.09.2016, 17:07 | #6 |
Пользователь
Регистрация: 09.04.2016
Сообщений: 81
|
На самом деле, даже не задумывался об использовании WebClient для получения содержимого страницы, как-то привык к HttpClient и все. Спасибо, буду теперь гуглить в таком в таком случае)
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Перестал работать Intellisense | ninja2 | Visual C++ | 25 | 20.10.2015 16:34 |
Перестал работать css | impulsgraw | HTML и CSS | 8 | 22.08.2011 21:28 |
Перестал работать тестер | kanich | Помощь студентам | 4 | 15.11.2010 13:02 |
Перестал работать инетрнет | Golovastik | Операционные системы общие вопросы | 8 | 16.01.2010 14:12 |