Python 内部服务器错误和禁止访问
我正在尝试用下面的代码做一个网站的网页抓取Python 内部服务器错误和禁止访问,python,web-scraping,python-requests,httprequest,lxml,Python,Web Scraping,Python Requests,Httprequest,Lxml,我正在尝试用下面的代码做一个网站的网页抓取 import http.client from bs4 import BeautifulSoup import urllib.request from lxml.html import fromstring from http.client import HTTPConnection #as _HTTPConnection, HTTPException base_url = "https://apct.gov.in/apportal/Sea
import http.client
from bs4 import BeautifulSoup
import urllib.request
from lxml.html import fromstring
from http.client import HTTPConnection #as _HTTPConnection, HTTPException
base_url = "https://apct.gov.in/apportal/Search/ViewAPVATDealers.aspx"
page = urllib.request.urlopen(base_url)
soup = BeautifulSoup(page, "html.parser")
path = fromstring(soup.decode('utf-8'))
header = {
"Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",
"Accept-Encoding":"gzip, deflate, br",
"Accept-Language":"en-US,en;q=0.9",
"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36",
}
url = "https://apct.gov.in/apportal/Search/ViewAPVATDealers.aspx"
form_data={}
form_data["__EVENTTARGET"] = ""
form_data["__EVENTARGUMENT"] = ""
form_data["__LASTFOCUS"] = ""
form_data["__VIEWSTATE"] = path.xpath('//*[@id="__VIEWSTATE"]/@value')
form_data["__EVENTVALIDATION"] = path.xpath('//*[@id="__EVENTVALIDATION"]/@value')
form_data["ctl00$ContentPlaceHolder1$dropact"] = "LT"
form_data["ctl00$ContentPlaceHolder1$Ddl_Divisions"] = "GUNTUR"
form_data["ctl00$ContentPlaceHolder1$Ddl_Circles"] = "All Circles"
form_data["ctl00$ContentPlaceHolder1$ddlbusines"] = "Agent"
conn = http.client.HTTPConnection('apct.gov.in')
url_params = urllib.parse.urlencode(header)
# 1 #
# conn.request("POST", url, url_params, header)
# response = conn.getresponse()
# print(response.status, response.reason)
# data = response.read()
# print(data)
# conn.close()
# 2 #
# r = requests.post(url,form_data,url_params)
# #import pdb; pdb.set_trace()
# print(r.status_code, r.reason)
当我运行第一个注释部分以检索响应时,它显示403禁止
,当我运行第二个注释部分时,它显示内部服务器错误
。
有人能在任何一行中发现任何错误吗?这是我得到这个错误的原因。我知道,由于信息有限,很难识别错误,但这是我最后的选择。
提前感谢。我知道我的代码中没有错误,相反,如果填写了这些特定值,网站会显示一些错误。
403
表示服务器拒绝您的请求,因为您未经身份验证。当服务器遇到错误(通常是异常)并返回http状态代码500
时,会发生内部服务器错误。感谢您的回复,但我知道这些事情,我仍然无法在此处发现我的错误。这些不是您的(直接)错误。请注意这两种情况下的“服务器”一词。