我处理了如何导入当前保存为Scrapese.py
的python类的精神障碍。
import scrapy
class Scrapese(scrapy.Spider):
name = 'scrape-se'
seach_engine = [
'se1.com',
'se2.com',
]
def parse(self, seach_engine, site_to_parse, page_start, page_end, response):
site = str(seach_engine+site_to_parse)
if site_to_parse == seach_engine[0]:
print("executing against se1!")
elif site_to_parse == searh_engine[1]:
print("executing against se2!")
else:
print("Something bad happened.")
我一直在尝试典型:
from Scrapese import parse
但它说:
ImportError: cannot import name 'parse'
我做错了什么?
由于
答案 0 :(得分:1)
Scrapese
是Python模块的名称,您可以在其中定义一个名为Scrapese
的类。
行from Scrapese import parse
将导致Python解释器尝试导入名为Scrapese
的模块并查找对象parse
。
您可能想要做的是:
# Scrapese.py
class Scrapese(object):
def parse(self):
pass
# main.py
from Scrapese import Scrapese
o = Scrapese()
o.parse()
这将使Python解释器在另一个脚本(Scrapese
)中提供main.py
类定义,然后您可以实例化并用于解析。