Saya membuat halaman HTML sederhana untuk mengirim ke Script Python

<!DOCTYPE html>
<html>
<body>

<h1>Name</h1>

<form action="/cgi-bin/ver1.py" method="get">
  <label for="fname">VIN</label>
  <input type="text" id="fname" name="searchbox"><br><br>
  <button type="submit" formtarget="_blank">Submit to a new window/tab</button>
</form>


</body>
</html>

Ver1.py terlihat seperti ini:

#!C:\Python\python.exe


import requests
import webbrowser
import cgi
form = cgi.FieldStorage()
 

vin=form.getvalue('searchbox')
token='withheld'

dr=requests.get("withheld" % (token, vin))




window_stkr=(dr.json()["car"]["sticker"]["pdf"])
webbrowser.open_new_tab(window_stkr)

Semuanya bekerja dengan benar, kecuali untuk bagian di mana alih-alih hanya membuka satu tab baru dengan window_stkredit itu juga membuka tab kedua dengan

akhir output skrip sebelum header

त्रुटि

Saat melihat log kesalahan dari Apache, satu-satunya baris ada yang berikut:

[Jumat 11 00: 46: 21.231868 2020] [CGI: Kesalahan] [PID 11624: Tid 1896] [Klien :: 1: 54144] Akhir output skrip sebelum header: ver1.py, // localhost // decoder.html

0
Wizy 10 सितंबर 2020, 23:52

1 उत्तर

सबसे बढ़िया उत्तर

Karena @furas menunjukkan itu karena saya tidak mengirim respons kembali ke browser.

Saya membuat perubahan di bawah ini dan bukannya 3 tab, saya sekarang memiliki satu halaman HTML dan PDF terbuka di jendela di mana kesalahan dulu:

#!C:\Python\python.exe


import requests
import webbrowser
import cgi
form = cgi.FieldStorage()
 

vin=form.getvalue('searchbox')
token='withheld'

dr=requests.get("withheld" % (token, vin))




window_stkr=(dr.json()["car"]["sticker"]["pdf"])
#webbrowser.open_new_tab(window_stkr)
print('Content-type:text/html\n\n')
print('<html>')
print('  <head>')
print('    <meta http-equiv="refresh" content="0;url='+str(window_stkr)+'" />') 
print('  </head>')
print('</html>')
1
Wizy 10 सितंबर 2020, 22:50