1
summerwar 2017-11-19 12:14:57 +08:00
beautifulsoup
|
2
jahan OP @summerwar 想用 selenium 登陆这个网站,不想用 bs,有没有办法找到 sign 的 username 和 password 的输入项目
|
3
xmcp 2017-11-19 13:00:55 +08:00
你是说这样? |
4
jahan OP |
6
jahan OP 有没有可视化的工具,比如我鼠标点到了那个地方,对应地方的代码就能高亮,这样比较好找?
|
7
iiduce 2017-11-19 14:01:02 +08:00
firebug。
这个页面 sign in 没有直接写在 html 中,所以你找不到它。 它是通过 js 调用的,点击 sign in,并没有新的网络请求,所以 sign in 的 html 应该封装在了 js 文件中。 |
8
jahan OP elem = driver.find_element_by_class_name('tv-header__device-signin js-header__signin')
#elem_1 = driver.find_element_by_link_text('#signin') print("elem as follows:", elem) #print(elem_1) elem_2 = driver.find_element(By.CLASS_NAME, 'tv-unauth-header') print("elem_2 as follows:", elem_2) elem_3 = driver.find_element(By.CLASS_NAME, 'tv-unauth-header__text-input js-go-to-chart-field') print("elem_3 as follows:", elem_3) 找到了这几个靠近这个区域的,不过觉得不是 username 和 password 的输入哈 |
9
hcnhcn012 2017-11-19 14:01:25 +08:00 via iPhone
Chrome f12 的左上角,那里有个按钮,点一下就可以用鼠标选取元素定位了
|
11
jahan OP |
12
iiduce 2017-11-19 14:10:21 +08:00 1
|
13
jahan OP 在这里里面的话,是不是要
driver.get("https://www.tradingview.com/static/bundles/signin-dialog.9e33db5940f5894253d9.js ") password =driver.find_element(By.NAME, 'password') |
15
fzinfz 2017-11-20 02:22:51 +08:00
|
16
jahan OP 感谢大家,已经做完了。现在的问题是浏览速度比较慢,970 个 ticker,一个要 wait 一分钟,也就 16 个小时?就是有点慢。
|
17
jahan OP 话说这 selenium 真是太棒了。
|
18
wx8600 2017-11-22 20:07:21 +08:00
好像 Firefox、Chrome、IE 都可以直接右键检查元素的吧?
要在 Python 里面找的话,你可以考虑看一下 lxml (我没用过, 刚弄了一个用 beautifulsoup 的、感觉很慢 |