python - 处理文件名中的“/”
问题描述
我正在尝试在 python 中使用 scrapy 保存 html 页面及其类别。在尝试保存它们时,我希望它们具有名称“WebCategory_http://whatever.com”。每当我尝试使用此代码执行此操作时:
def parse(self,response):
content = response.body
url = response.url
cat = str(response.meta['cat'])
filename = str(cat) + '_' + str(url)
with open(filename,'wb') as f:
f.write(response.body)
当我这样做时,会发生这种情况:
IOError: [Errno 2] No such file or directory: 'Arts_https://www.behindthevoiceactors.com/'
2018-11-19 15:43:15 [scrapy.extensions.logstats] INFO: Crawled 45 pages (at 45 pages/min), scraped 0 items (at 0 items/min)
n)
我的猜测是'/'被解释为路径的一部分而不是文件名,有没有办法继续使用'/'?
解决方案
不,/
在大多数文件系统中不是文件名的有效部分。您需要用不同的字符替换它。
推荐阅读
- python - 使用 pyodbc 和机器学习服务打开与 SQL Server DB 的连接时出现问题
- html - Vue.js物化日期选择器不显示
- javascript - 如何使用 Javascript 将多个音频文件附加到当前正在播放的音频中?
- android - 是否有任何方法可以清除我所有低于 21 的 android 应用程序任务(活动返回堆栈)?
- node.js - 有问题。邮政。评论模式 - Mongoose/Typescript
- mongodb - MongoDB - 如何在插入时引用父级中的子级/嵌套文档_id
- haskell - 如何确定一个 Enum 值是否是另一个 Enum 值的后继值?
- docker - 下载 Hyperledger Fabric docker 图像时遇到问题
- reactjs - 使用 Enzyme 更改 React 功能组件的 Props
- javascript - 如何将两个字段组合成第三个标签?