我们正在等待姐姐的结果。与印度政府一样,很多事情都发生了。服务器很慢,流量很大。
所以,我想写一个python程序,继续尝试,直到服务器响应Http请求。但该计划:
import urllib
i=1
f = open("C:/Users/DELL/Desktop/neetpg.html",'w')
while(True):
try:
page = urllib.urlopen("http://www.nbe.gov.in/asr/neet_pdf/")
print "Done"
break
except:
print i
i += 1
continue
f.write(page.read())
print "check"
但该程序运行不正常。我尝试用facebook.com
替换网址,它仍打印出数字。
此外我想要的是,如果服务器确实响应,网页会加载js和css文件以及html文件,所有这些都应该在浏览器中打开。
我还从http://docs.python.org/2/library/webbrowser.html提示 并将程序更改为:
import webbrowser
i=1
while(True):
try:
webbrowser.open("http://www.nbe.gov.in/asr/neet_pdf/")
print "Done"
break
except:
print i
i += 1
continue
print "check"
但所有这一切,都是在我的默认Web浏览器中打开一个新窗口,并将url设置为给定的内容,然后“打开它”。同时,在python shell上打印Done和Check。
未收到服务器响应的网络浏览器显示could not connect to www.nbe.gov.in
。
如何实现这一目标?
编辑:刚看到facebook.com脚本终究有效。它花了大约15次尝试,然后它发生了。 .html
文件已正确写入。有了所有的CSS,也可能是JS。
为什么会这样,尝试了很多次,而我可以轻松地从浏览器中打开facebook.com。
答案 0 :(得分:2)
尝试selenium。
这个想法是继续打开页面,直到司机看到正确的标题。如果它在那里,只需打破循环并打开页面:
from selenium import webdriver
driver = webdriver.Firefox()
while True:
driver.get("http://www.nbe.gov.in/asr/neet_pdf/")
if 'NEET-PG' in driver.title:
break
希望有所帮助。