我正在使用/学习scrapy
,python 框架来抓取一些我感兴趣的网页。在那之后,我提取了页面中的链接。但在大多数情况下,这些链接是相对的。我使用urljoin_rfc
which is present inscrapy.utils.url
来获取绝对路径。它工作得很好。
在学习过程中,我遇到了一个名为Item Loader
. 现在我想使用 Item loader 做同样的事情。我urljoin_rfc()
在一个用户定义的函数函数_urljoin(url,response)
中。我希望我的加载程序_urljoin
现在引用该函数。所以在我的加载器类中我这样做了link_in = _urljoin()
。所以我将我的 _urljoin 声明更改为_urljoin(url, response = loader_context.response)
. 但我得到一个错误说NameError: name 'loader_context' is not defined
我在这里需要帮助。我这样做是因为,不仅在加载时我调用了 _urljoin(),我的代码的其他部分也调用了函数 _urljoin。如果我做得非常糟糕,请引起我的注意。