Найти - Пользователи
Полная версия: spynner
Начало » Python для новичков » spynner
1
se111!
Пользуется кто нибудь?
У меня так и не получилось перейти с его помощью по ссылке, передав при этом куки.
Во всех примерах у ссылки есть id…:)
sypper-pit
можно по подробнее узнать какие действия надо выполнить , вообще есть urllib2 который может куки помнить
se111!
Ну вроде спиннер - готовый эмулятop браузера - github.com/kiorky/spynner. Но тут образовалась проблема - питон первый раз вижу, весь опыт кодинга немного пхп:( Помучал немного и разобраться нормально не смог. Тестовая задача была просто проитись по любой хтмл страничке и нажать пару ссылок рандомных. Запускался под эмулятором иксов. В общем не понятно как сделать browser.select перед кликом, если самой ссылке не присвоен id.
ofigetitelno
:)
ссылку можно получить через css селектор или через xpath селектор…
примерно так:
import spynner
import time

def xpath_prepare(xpath):
return xpath.replace('x:', '')\
.replace('"', '\'')

b = spynner.Browser()
b.create_webview()
b.show()
b.load('http://python.su')
js1 = '''(function () {
var element = (function () {
var value = document.evaluate("%s", document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue
return value
})()
if (element)
return _jQuery(element).attr('id', 'mega_id').attr('id')
})()'''
js2 = '''(function () {
return _jQuery("%s").attr('id', 'mega_id').attr('id')
})()'''
xpath = "id('News')/x:span[2]/x:ul[1]/x:li[1]/x:a"
css = "#content > p.line867 > a"
href = b.runjs(js1 % xpath_prepare(xpath)).toString()
b.click_link('#'+href, 60)
time.sleep(5)
href = b.runjs(js2 % css).toString()
b.click_link('#'+href, 60)
time.sleep(5)
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