参数未反映在Python函数调用中
我调用的类方法如下:参数未反映在Python函数调用中,python,django,Python,Django,我调用的类方法如下: soup = bs4.BeautifulSoup(self.req_proxy.generate_proxied_request(some_url).text, "html.parser", "United States") def generate_proxied_request(self, url, params={}, req_timeout=30, country=None): if country is not None: searche
soup = bs4.BeautifulSoup(self.req_proxy.generate_proxied_request(some_url).text, "html.parser", "United States")
def generate_proxied_request(self, url, params={}, req_timeout=30, country=None):
if country is not None:
searched_proxies = []
for proxy in self.proxy_list:
if str(proxy[1]) == country:
searched_proxies.append(proxy)
else:
searched_proxies = self.proxy_list
类方法的定义如下:
soup = bs4.BeautifulSoup(self.req_proxy.generate_proxied_request(some_url).text, "html.parser", "United States")
def generate_proxied_request(self, url, params={}, req_timeout=30, country=None):
if country is not None:
searched_proxies = []
for proxy in self.proxy_list:
if str(proxy[1]) == country:
searched_proxies.append(proxy)
else:
searched_proxies = self.proxy_list
美国
是用来解析国家
变量的,但它不是。调用该函数时,它接受值None
。为什么国家
没有反映美国
的价值?试试这个:
soup = bs4.BeautifulSoup(self.req_proxy.generate_proxied_request(some_url, country="United States").text, "html.parser")`
您正在将“美国”
传递给BeautifulSoup
构造函数,而不是传递给生成代理请求的方法
以下是正确的:
soup = bs4.BeautifulSoup(self.req_proxy.generate_proxied_request(some_url, country="United States").text, "html.parser")
BeautifulSoup
构造函数类似于:
因此,在当前表单中,您将“美国”
赋值给builder
参数。您将Unitet State
放在了错误的位置-现在它是BeautifulSoup
的参数,您必须将其放在(一些url,country='United State')