您当前的位置:首页 > 计算机 > 编程开发 > Python

使用pyinstaller打包后os获取当前可执行文件所在路径,自动执行scrapy

时间:12-06来源:作者:点击数:

本文介绍如何使用Python的os模块和PyInstaller将Scrapy爬虫项目打包成可执行文件,并通过命令行调用指定的爬虫进行抓取。文中提供了完整的代码示例,包括路径处理和执行Scrapy命令的方法。

先上正确的代码,使用realpath:

from os import path
import sys
file_path = path.dirname(path.realpath(sys.argv[0])) + '\\spiders'

实现爬虫中,模拟cmd命令scrapy crawl 爬虫文件名,通过打包形成可执行文件,该执行文件需放到和spiders文件夹同级目录下

全部代码,main_get_news.py:

# 模拟cmd命令scrapy crawl qxyj
from os import system, path
import sys
# os.path.realpath()先处理路径中的符号链接,再返回绝对路径前文件所在目录的绝对路径
file_path = path.dirname(path.realpath(sys.argv[0])) + '\\spiders'
# 返回python解释器的路径,这个也可以,仅仅针对生成可执行文件时使用
# file_path = path.dirname(sys.executable) + '\\spiders'
print("路径地址:", file_path)
if path.exists(file_path):
    system('cd {} && scrapy crawl qxyj'.format(file_path))
else:
    print("执行失败!该执行文件需放在和spiders文件夹同级目录下!")
input("按回车键退出...")

再通过pyinstaller打包:pyinstaller -F main_get_news.py即可

之后还可以通过用户输入爬虫名的方式,更灵活的使用

还可以了解一下subprocess:

subprocess.Popen('notepad.exe D:\\123.txt')
subprocess.Popen('notepad.exe D:\\123.txt',shell=True)
subprocess.Popen(['notepad.exe','D:\\123.txt'])
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门
本栏推荐