You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python跨文件调用函数:scrap.py代码需调整吗?如何调整?

Python跨文件导入爬虫函数的问题解决

需要修改scrap.py,当前代码存在逻辑错误与命名冲突问题,具体修改方案如下:

问题分析与修改点

  • 参数逻辑错误:controller函数定义的参数是list,但内部调用scraper(url)时url未定义,且你实际需要传入网址触发爬虫,因此controller应接收url作为参数。
  • 内置名称冲突:filter是Python内置函数,list是内置类型,用它们命名自定义函数/变量会覆盖内置对象,引发潜在问题,建议重命名。
  • 函数逻辑混乱:controller当前的返回语句逻辑错误,需先调用scraper获取爬取结果,再传入过滤函数处理。

修改后的scrap.py代码

def scraper(url):
    result_list = []
    # 保留你的爬虫实现逻辑
    return result_list

def filter_data(data_list):
    # 保留你的过滤实现逻辑
    return data_list

def controller(url):
    scraped_data = scraper(url)
    return filter_data(scraped_data)

another.py的使用方式

确保两个文件在同一目录下,直接取消注释调用即可:

import scrap

# 调用controller并传入目标网址
final_result = scrap.controller('https://your-target-url.com')
print(final_result)

若两个文件不在同一目录,需将scrap.py所在目录添加到Python的搜索路径中:

import sys
sys.path.append('/绝对路径/到/scrap.py所在文件夹')
import scrap

final_result = scrap.controller('https://your-target-url.com')

内容的提问来源于stack exchange,提问作者KimGyeongMin-KR

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 01:24:14