草庐IT

DOT_PATH

全部标签

python - 使用 scrapy : defining path to Django project 访问 Django 模型

我对Python和Django非常陌生。我目前正在探索使用Scrapy来抓取网站并将数据保存到Django数据库。我的目标是根据用户提供的域运行蜘蛛。我写了一个蜘蛛,它可以提取我需要的数据,并在调用时将其正确存储在一个json文件中scrapycrawlspider-oitems.json-tjson如scrapytutorial中所述.我现在的目标是让蜘蛛成功地将数据保存到Django数据库,然后根据用户输入让蜘蛛运行。我知道有很多关于这个主题的帖子,例如:link1link2link3但是我花了超过8个小时试图让它工作,我假设我不是唯一一个仍然面临这个问题的人。因此,我将尝试收集到

python - 在 os.listdir(path) 中使用文件扩展名通配符

我有一个尝试使用Python解析的文件目录。如果它们都是相同的扩展名,我不会有问题,但无论出于何种原因,它们都是在原始扩展名之后使用顺序数字扩展名创建的。例如:foo.logfoo.log.1foo.log.2bar.logbar.log.1bar.log.2etc.最重要的是,foo.log是XML格式,而bar.log不是。为了仅读取和解析foo.log.*andfoo.log文件,最佳途径是什么?bar.log文件不需要读取。以下是我的代码:importosfromlxmlimportetreepath='C:/foo/bar//'listing=os.listdir(path)

python - 在 python 中导入之前设置 LD_LIBRARY_PATH

Python使用PYTHONPATH环境变量来确定它应该在哪些文件夹中查找模块。您可以通过修改sys.path来玩转它,这对纯Python模块非常有效。但是,当一个模块使用共享对象文件或静态库时,它会在LD_LIBRARY_PATH(在linux上)中查找那些,但这不能轻易更改,并且据我所知取决于平台。这个问题的快速修复当然是设置环境变量或调用像LD_LIBRARY_PATH=这样的脚本。./script.py,但是你必须为你打开的每个新shell重新设置它。此外,在我的情况下,.so文件将始终与.py文件位于同一目录中,但很可能会移动到另一个绝对路径,所以我我希望每次调用脚本时自动设

python - 安装 iPython : "ImportError cannot import name path"?

我正在尝试安装IPython。我已经运行pipinstallipython[notebook]没有任何错误,但现在我明白了:$ipythonnotebookTraceback(mostrecentcalllast):File"/Users/me/.virtualenvs/.venv/bin/ipython",line7,infromIPythonimportstart_ipythonFile"/Users/me/.virtualenvs/.venv/lib/python2.7/site-packages/IPython/__init__.py",line48,infrom.termin

python - 加载模块时使用 sys.path.insert(0, path) 和 sys.path(append) 的效果

我最近遇到了一个pythonImportError问题,在我的本地计算机上运行时找到了该模块,但在CI服务器上找不到该模块。我通过将脚本中的sys.path.append(path)与sys.path.insert(0,path)交换来解决了这个问题,其中path是字符串模块位置。既然这是我的模块而不是已安装的包(relatedquestion),为什么路径的顺序可以解决这个问题? 最佳答案 我是Python的初学者,我发现Anand的答案非常好,但对我来说很复杂,所以我尝试重新表述:1)insert和append方法并不特定于sy

python - 确保 py.test 在 sys.path 中包含应用程序目录

我有一个项目目录结构如下(我认为这很标准):my_projectsetup.pymypkg__init__.pyfoo.pytestsfunctionaltest_f1.pyunittest_u1.py我正在使用py.test作为我的测试框架,我希望能够在my_project目录中运行py.testtests我的测试。这确实有效,直到我尝试在测试中使用(例如)importmypkg导入我的应用程序代码。那时,我收到错误“没有名为mypkg的模块”。经过一番调查,似乎py.test使用sys.path中的测试文件目录运行测试,但不是运行py.test的目录。为了解决这个问题,我在test

python - os.getcwd() 与 os.path.abspath(os.path.dirname(__file__))

我正在使用os模块在我的Django项目settings.py文件中具有相对路径。变量SITE_ROOT设置为settings.py文件的当前工作目录,然后用于引用同样位于同一目录中的所有static/media目录。这是我的问题:printos.getcwd()printos.path.abspath(os.path.dirname(__file__))在settings.py中,上述语句都有相同的输出。但是只有当我使用SITE_ROOT=os.path.abspath(os.path.dirname(__file__))时我的模板才会加载Django在这里寻找模板:TEMPLATE

python - 用 os.path.join() 构造绝对路径

我想在python中构建一个绝对路径,同时对路径分隔符之类的东西保持相当的清醒。edit0:例如在我的文件系统/etc/init.d(或C:\etc\init.d在w32上),我只想从元素etc和init.d构造它(在w32上,我可能还需要一个磁盘ID,像C:)为了不必担心路径分隔符,os.join.path()显然是首选工具。但似乎这只会创建relative路径:print("MYPATH:%s"%(os.path.join('etc','init.d'),)MYPATH:etc/init.d添加一个虚拟的第一个元素(例如'')没有任何帮助:print("MYPATH:%s"%(os

python - Jupyter 和 Python 中的 sys.path 不同 - 如何在 Jupyter 中导入自己的模块?

在Jupyter中我自己的小模块没有加载,但在python/bpython中一切都很好。打字时importsysprint(sys.path)我的模块的路径不会在Jupyter中显示,但在python/bpython中它仍然存在。我正在使用:.bashrc中的PYTHONPATH以包含我的模块,虚拟环境中的Jupyter和bpython。最相似的问题是这个Cannotimportmodulesinjupyternotebook;wrongsys.path如何配置Jupyter以自动加载我的模块? 最佳答案 这是我在jupyterno

python - 在 Windows 上使用 os.path.join 混合斜线

我倾向于只对路径('/')使用正斜杠,python也很喜欢它在Windows上。在os.path.join的描述中,如果你想跨平台,这是正确的方法。但是当我使用它时,我得到了混合斜线:importosa='c:/'b='myFirstDirectory/'c='mySecondDirectory'd='myThirdDirectory'e='myExecutable.exe'printos.path.join(a,b,c,d,e)#Result:c:/myFirstDirectory/mySecondDirectory\myThirdDirectory\myExecutable.exe