Найти - Пользователи
Полная версия: По xpath вопрос.
Начало » Python для новичков » По xpath вопрос.
1 2
gelius
Вот пытаюсь вытянуть скрипт гуглокапчи:
<script type="text/javascript" src="https://www.google.com/recaptcha/api/challenge?k=6Ld5BuASAAAAAMAvzYwsP0HwhJmAoXTF-QfNPXEB"></script>
Так:
cap_url = url.xpath('//script[contains(@src, "recaptcha")]/@script')
Где ошибка?
py.user.next
gelius
/@script
Заменить script на src.
lorien
@script - означает взять содержимое аттрибута “script” - думаю, это не то, что вам нужно.
gelius
Заменил:
cap_url = url.xpath('//script[contains(@src, "recaptcha")]/@src')
print cap_url
Отдает:
[]
den4ik
gelius, нужно проверить исходник страницы. Возможно (99%) на странице динамическая генерация ссылки на капчу, поэтому и не находит.
gelius
На самом деле ошибка была глупая, сделана по невнимательности.
Ссылку искал на другой странице.
paraman
Лучше используй регулярные выражения, чем xpath.
den4ik
paraman
Лучше используй регулярные выражения, чем xpath.
Какая же регулярка будет для следующего кода?
<div class='someclass1'>
    <div class='someclass2'>
        <div class='someclass3'>
        ...
            <div class='someclassN'>
                Foo bar baz
            </div>
        ...
       </div>
    </div>
</div>
paraman
den4ik
<div class='someclassN'>\s(.*?)\n.*?</div>
den4ik
paraman

нуну, а как с этим будут работать?
<div class='someclass1'>
    <div class='someclass2'>
        <div class='someclass3'>
        ...
            <div class='someclassN'>Foo bar baz
            </div>
        ...
       </div>
    </div>
</div>
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB