Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 内部服务器错误和禁止访问_Python_Web Scraping_Python Requests_Httprequest_Lxml - Fatal编程技术网

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
时,会发生内部服务器错误。感谢您的回复,但我知道这些事情,我仍然无法在此处发现我的错误。这些不是您的(直接)错误。请注意这两种情况下的“服务器”一词。