求一个HTML网页代码 代码要求。 我打开该网页。会自动跳转到我设置的A,B,C,D链接中的随机(随机!!)一个
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求一个HTML网页代码 代码要求。 我打开该网页。会自动跳转到我设置的A,B,C,D链接中的随机(随机!!)一个相关的知识,希望对你有一定的参考价值。
ABCD可以自己添加的修改。随机跳转的目标链接可以有添加N个(N最好能>100)
代码最好我直接复制进DW里就能用。谢了
function getRandomUrl()
var arr = [];
var r = Math.random();
arr[0] = 'http://www.baidu.com';
arr[1] = 'http://www.google.com';
arr[2] = 'http://www.bing.com';
arr[3] = 'http://www.qq.com';
//这里可以以arr[4]、arr[5]......这样继续添加
return arr[Math.round(arr.length*r)];
setTimeout(function()
location.href = getRandomUrl();
,1000);
</script>追问
Math.random函数能实现平均分布吗(无论我添加多少个跳转目标)
或者有没有办法实现 某个跳转目标今天跳转超过N(自定)次后不再跳转
比如定义另一个与arr[]对应的数组,然后打开一次,对应的数组中的值+1。然后>n(自定)后就不执行打开而是重新随机
我试了下。。发现arr[0]的点击量始终比其他的小很多
呵呵,聪明的你,难道不会选择把0跳转回当前页面,这样只要跳转到0,就可以再次触发跳转。
你说的第一个平均跳转的,我暂时没想到办法,因为浏览器无法保存程序中的变量;
第二个的话,可以实现,不过代码量会多很多....
话说我对这个不怎么懂。你能弄出个能直接放进空间的文件吗?然后需要改的时候再用DW改下
追答你要贴上去直接用,只能js了,这个我帮不了你,php我还能帮下....
使用 selenium 从动态网页表中查找值
【中文标题】使用 selenium 从动态网页表中查找值【英文标题】:Using selenium to find values from a dynamic webpage table 【发布时间】:2020-07-24 18:58:33 【问题描述】:我有一个 python 代码,它使用 selenium 打开一个大学成绩网页,输入一些学生值并打开该学生的成绩页面。 结果页面有一个动态表格,我无法访问其 HTML 代码。如何找到特定行和列的值?
我打开大学成绩网页的python代码是:
from selenium.webdriver.support.ui import Select
firefox_browser = webdriver.Firefox(executable_path=r'C:\Program Files\gecko\geckodriver.exe')
firefox_browser.get("http://results.drait.in/")
time.sleep(5)
print("Opening firefox")
select = Select(firefox_browser.find_element_by_id('ugpg'))
select.select_by_visible_text('UG-SEE')
name_input = firefox_browser.find_element_by_css_selector("#usn")
play_button = firefox_browser.find_element_by_css_selector("#submit")
name_input.send_keys("1DA17ISxxx")
play_button.send_keys(Keys.ENTER)
print("Done")
上面的代码打开了主结果页面,其中包含学生注册的科目和相应的成绩。
如何根据主题代码和考试类型访问特定的行和列,并将该值返回到我的 python 代码以进行打印?
我无法找到结果页面的 HTML 代码以使用表格名称访问表格。
结果页面的首页是这样的:https://imgur.com/a/1ZgENY6
提供学生证后显示学科详细信息和成绩的结果页面如下所示:https://imgur.com/a/xDAJ7IL
谢谢
【问题讨论】:
无法访问您的链接,能否提供有效的 url 或 DOM? 使用这个:results.drait.in或者你可以点击这里的第一个链接:dr-ait.org/autonomy/results 两个都试过了,但是无法访问这个网站 没有别人的usn就看不到你说的结果页 检查中选择“UG-SEE”选项,对于USN,可以给1IDA17ISxxx,xxx的范围是002-045。这应该会让你进入结果页面 【参考方案1】:首先你要导入 selenium webdriver
from selenium import webdriver
然后您必须导入密钥才能启用输入密钥
from selenium.webdriver.common.keys import Keys
那么如果你想使用time.sleep()
你必须导入时间模块
import time
检查表格,您可以获取表格标签中所有<tr>
标签的xpath
您的 xpath 将如下所示 /html/body/form/center/table/tbody/tr[1]
从此删除索引值/html/body/form/center/table/tbody/tr
使用 len 方法可以看到有多少行
a = len(firefox_browser.find_elements_by_xpath("/html/body/form/center/table/tbody/tr"))
类似地使用 xpath 的 <th>
标记列
您的 xpath 将如下所示 /html/body/form/center/table/tbody/tr[1]/th[1]
从此删除<th>
标签/html/body/form/center/table/tbody/tr[1]/th
的索引值
使用 len 方法可以看到有多少列
b = len(firefox_browser.find_elements_by_xpath("/html/body/form/center/table/tbody/tr[1]/th"))
现在a
代表有多少行,b
代表列数
写一个for循环
for r in range(2,a+1):#starting from 2 because first rows is headings
for c in range(1,b+1):
#use the variables a and b instead of the index of <tr> and <th>
value =
firefox_browser.find_elements_by_xpath("/html/body/form/center/table/tbody/tr["+r+"]/th["+c+"]")
print(value.text)
如果你想使用 if 语句从特定标题中选择元素
这样使用
check=firefox_browser.find_elements_by_xpath("/html/body/form/center/table/tbody/tr[1]/th[1]")
if check.text == "your value":
#do something
【讨论】:
以上是关于求一个HTML网页代码 代码要求。 我打开该网页。会自动跳转到我设置的A,B,C,D链接中的随机(随机!!)一个的主要内容,如果未能解决你的问题,请参考以下文章