标签: python-webbrowser

如何编写 python 脚本来不断尝试网页直到打开

我们正在等待姐姐的结果。印度政府也经常遇到这种情况。服务器很慢,流量很大。

于是,我想到写一个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"
Run Code Online (Sandbox Code Playgroud)

但该程序无法正常运行。我尝试将 url 替换为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"
Run Code Online (Sandbox Code Playgroud)

但所有这一切都是在我的默认网络浏览器中打开一个新窗口,并将网址设置为给定的内容,然后“打开它”。同时,在 python shell 上打印 Done 和 Check。

Web 浏览器未收到服务器的响应,将显示could not connect to www.nbe.gov.in

如何实现这一目标?

编辑:刚刚看到 facebook.com 脚本毕竟有效。大约尝试了 15 …

python urllib python-2.7 python-webbrowser

6
推荐指数
1
解决办法
2382
查看次数

Webbrowser 将双引号转换为 %2522

正如标题中所解释的,无论我做什么,我都无法让 webbrowser 打开我希望它打开的 URL。

我尝试用 \ 转义双引号

我尝试在 URL 中使用 %22 而不是“

无论如何,结束 URL 最终会有效地将 " 变成 %2522

我知道 %25 代表 %,这意味着,不知何故“首先被变成 %22,然后 % 被变成 %25。毫无意义,我不知道为什么它会被处理两次。

示例 URL(在 python 中打印变量时得到的):

https://domain.com/do?q=item :(("abc")+OR+("def")+OR+("ghj"))

在 Chrome 中打开的网络浏览器:

https://domain.com/do?q=item:((%2522abc%2522)+OR+(%2522def%2522)+OR+(%2522ghj%2522))

python python-webbrowser

6
推荐指数
1
解决办法
4317
查看次数

如何使用 Python webbrowser.open() 在后台打开窗口

我有一个运行的程序

`import webbrowser
 path = "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"
 webbrowser.register('chrome', None, webbrowser.BackgroundBrowser(path))
 chrome = webbrowser.get('chrome')
 chrome.open('chrome://newtab')`
Run Code Online (Sandbox Code Playgroud)

有没有办法让这个程序在后台运行并防止弹出窗口?我已经尝试过chrome.open('chrome://newtab', autoraise=False),但程序仍然无法在后台打开窗口。

python python-webbrowser

6
推荐指数
0
解决办法
1633
查看次数

如何在Python中以隐身模式打开chrome

这在powershell中有效:

Start-Process chrome.exe -ArgumentList @( '-incognito', 'www.foo.com' )
Run Code Online (Sandbox Code Playgroud)

如何通过Python实现这一目标?

python google-chrome python-2.7 python-webbrowser

6
推荐指数
3
解决办法
8297
查看次数

在 Python 中使用的高级邮件

我正在尝试用 Python 发送一封带有自定义收件人、主题和正文的电子邮件。这意味着我不想使用Python 的 smtp 包,而是使用webbrowser 之类的东西,因为我需要它来打开带有上述参数的默认电子邮件客户端(在我的情况下为 Thunderbird)。

import webbrowser
webbrowser.open("mailto:?to=aaa@email.com&subject=mysubject", new=1)
Run Code Online (Sandbox Code Playgroud)

工作,但我需要它从我之前找到的字符串和我之前创建的文本文件中的正文中获取收件人。

有没有我找不到的“简单”方法来做到这一点?提前致谢。

python email python-2.7 python-webbrowser

6
推荐指数
1
解决办法
4675
查看次数

使用 Python 打开网页时如何覆盖 Windows 7 中的默认浏览器选择

我有一个在 Windows 上用 Python 3.7.4 编写的程序,可以在浏览器中打开网页。它显示默认浏览器,并让用户有机会更改他们想要用来打开程序的浏览器。

使用此技术初始化程序时会检测到默认浏览器:

from winreg import HKEY_CURRENT_USER, OpenKey, QueryValueEx

import webbroswer

reg_path = r'Software\Microsoft\Windows\Shell\Associations\UrlAssociations\https\UserChoice'
chrome_path = 'C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s'
firefox_path = 'C:/Program Files (x86)/Mozilla Firefox/firefox.exe %s'

with OpenKey(HKEY_CURRENT_USER, reg_path) as key:
    print(QueryValueEx(key, 'ProgId'))
    thedefaultbrowser = (QueryValueEx(key, 'ProgId'))
    thedefaultbrowser = (thedefaultbrowser[0])
    thedefaultbrowser = (thedefaultbrowser[0:2])
    if thedefaultbrowser == "Fi":
        browser_path = firefox_path
    if thedefaultbrowser == "Ch":
        browser_path = chrome_path
Run Code Online (Sandbox Code Playgroud)

链接是这样打开的,作为程序后面发生的无限循环的一部分:

while True:

    # [lots of GUI code that isn't relevant]

    event = input()

    if event …
Run Code Online (Sandbox Code Playgroud)

python python-3.x python-webbrowser

6
推荐指数
1
解决办法
782
查看次数

使用 Web(Html css) 和 Python 进行人脸检测

我对网络技术很陌生。我正在制作一个集成了人脸检测的聊天机器人,尽管我知道如何使用 python 及其库与其他作品一起工作,但我在加载页面时遇到了问题

需求:web上的人脸检测,目前我们可以将其称为localhost。因此,为此,我准备了 OpenCV Harcascade 文件,并且检测部分也在发生。示例下面的图像和代码用于 web 和 pyton。

错误:通过单击 Weblink,python 烧瓶导航将进入挂起状态。

在此处输入图片说明

正如您在此处看到的那样,人脸检测正在运行,但是当我单击“收集我的图像”链接时,它会永远加载。请帮忙解决这个问题。

html代码:

<!DOCTYPE html>
<html>
<head>
    <title>Video Stream</title>
    <!-- <link rel="stylesheet" href="templates/css/main.css"> -->
</head>
<body>

<h2>ChatBot</h2>
<p >{{ alert }}</p>

<div class="container">
  <img class="bottomright" class="center" style="width: 500px;height: 300px;"src="{{ url_for('video_feed') }}">
  <div class="col-md-6 col-sm-6 col-xs-6"> <a href="/exec2" class="btn btn-sm animated-button victoria-one">Collect My Images</a> </div>
</div>  
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

Python Main.py 类:-

from flask import Flask, render_template, Response
from camera import VideoCamera
# import create_data

app = Flask(__name__) …
Run Code Online (Sandbox Code Playgroud)

html python opencv python-webbrowser flask-restful

6
推荐指数
1
解决办法
586
查看次数

如何使用 python 从网络浏览器获取内容?

我有一个网页: http://kff.org/womens-health-policy/state-indicator/ultrasound-requirements/# ,我需要从该网页中提取表格。

遇到的问题:我一直在使用BeautifulSoup并请求获取url内容。这些方法的问题是,我什至可以在生成表格之前获取 Web 内容。

所以我得到空表<table><thead></thead><tbody></tbody></table>

我的方法:现在我尝试使用 webbrowser.open_new_tab(url) 在浏览器中打开 url,然后直接从浏览器获取内容。这将使服务器更新表,然后我将能够从页面获取内容。

问题:我不确定如何直接从 Web 浏览器获取信息。

现在我在Windows系统上使用Mozilla。

找到最近的链接网站 链接。但它给出了哪些网站被打开,而不是内容

有没有其他方法可以让表加载到 urllib2 或 beautifulsoup 和 requests 中?或者有什么方法可以直接从网页获取加载的内容。

谢谢

python web-scraping python-webbrowser

5
推荐指数
1
解决办法
1万
查看次数

如何设置cherrypy服务器发送事件

我正在开发一个简单的网络应用程序,它是用 Angular 和 Cherrypy 完成的(目前正在制作原型)。我正在上传两个文件,然后使用子进程(popen)调用cherrypy中的外部python程序来处理它们。到目前为止我能够做到这一点。我想要实现的是将外部程序的输出(我通过 popen 捕获)传递给客户端。我的问题是,我正在尝试在cherrypy 上设置服务器发送事件但没有成功。

这是我公开的樱桃方法(来自网络的示例):

@cherrypy.expose
def getUpdate(self):
    #Set the expected headers...
    cherrypy.response.headers["Content-Type"] = "text/event-stream;charset=utf-8"
    def content():
         yield "Hello,"
         yield "world"
    return content()
Run Code Online (Sandbox Code Playgroud)

这是 javascript 客户端代码(我启用了 CORS 并且正在运行):

var sseEvent = new EventSource('http://localhost:8090/getUpdate');
sseEvent.onmessage = function (event) {
    console.log(event);
};
sseEvent.onopen = function (event) {
  //console.log("I have started...");
};
Run Code Online (Sandbox Code Playgroud)

我已经在这个博客中看过这个问题。然而,在从服务器端调用该函数时,EventSource 对象上的 onmessage 事件不会触发。我的理解是,您可以从服务器端调用该函数,它会捕获来自浏览器的事件。是我错了还是设置错了?

python cherrypy python-webbrowser server-sent-events angularjs

5
推荐指数
1
解决办法
2019
查看次数

Python - 打开网站并发送 cookie

如何使用 Python 将 cookie 发送到网络浏览器(我使用的是 3.7 版)?

我知道如何打开网站:

import webbrowser
webbrowser.open("http://www.example.com", new=2)
Run Code Online (Sandbox Code Playgroud)

但我不知道如何使用保存在某处的 cookie 来打开该站点。

python cookies session-cookies python-webbrowser python-3.7

5
推荐指数
1
解决办法
2808
查看次数