Python脚本出现IndentationError错误,无法正确调整代码缩进求助
Python缩进错误修正方案
你代码的缩进问题主要来自两处:
get_proxies()函数的return proxies语句之后的业务代码缩进错误,被包含在函数内部永远不会执行,需要取消多余缩进放到全局执行层级- 循环、try-except代码块内的缩进空格数不统一,不同层级代码混用多空格缩进,统一调整为4空格为一个缩进层级即可。
开发时建议开启编辑器空白字符显示功能,可直观区分空格、制表符,快速排查缩进类问题
修正后完整代码
from lxml.html import fromstring import requests from itertools import cycle import traceback def get_proxies(): url = 'https://free-proxy-list.net/' response = requests.get(url) parser = fromstring(response.text) proxies = set() for i in parser.xpath('//tbody/tr')[:10]: if i.xpath('.//td[7][contains(text(),"yes")]'): proxy = ":".join([i.xpath('.//td[1]/text()')[0], i.xpath('.//td[2]/text()')[0]]) proxies.add(proxy) return proxies proxies = get_proxies() proxy_pool = cycle(proxies) url = 'https://httpbin.org/ip' for i in range(1,11): # Get a proxy from the pool proxy = next(proxy_pool) print("Request #%d"%i) try: response = requests.get(url,proxies={"http": proxy, "https": proxy}) print(response.json()) except: print("Skipping. Connnection error")
内容的提问来源于stack exchange,提问作者Aryan Samthaan
相关产品推荐
相关产品推荐

