Composer安装: Connection Error [ERR_CONNECTION]: Unable to connect to getcomposer.org Request to...

Windows中Composer安装:

https://getcomposer.org/Composer-Setup.exe,下载安装包,运行安装,选择相应的php.ini(此处composer会将此php的路径加入到环境变量)

注:若安装过程中:
Connection Error [ERR_CONNECTION]: Unable to connect to getcomposer.org
Request to https://getcomposer.org/installer failed with errors:
SSL: Handshake timed out. Failed to enable crypto. Failed to open stream: operation failed

出现以上错误导致安装不成功的解决办法:

  1. 下载ca-bundle.crt 文件 (https://raw.githubusercontent.com/bagder/ca-bundle/master/ca-bundle.crt
  2. 将ca-bundle.crt 放到任意文件夹中(例如 c:/phpstudy/ca-bundle.crt)
  3. 找到安装Composer的 php.ini,打开文件,添加以下两行数据
    curl.cainfo=c:/phpStudy/ca-bundle.crt
    openssl.cafile=c:/phpStudy/ca-bundle.crt
  4. 重新安装Composer应该就能成功了。
composer常用命令:
  1. composer self-update:
    将 Composer 自身升级到最新版本,只需要运行 self-update 命令。它将替换你的 composer.phar 文件到最新版本。
  2. composer install:
    从当前目录读取 composer.json 文件,处理了依赖关系,并把其安装到 vendor 目录下。如果当前目录下存在 composer.lock 文件,它会从此文件读取依赖版本,而不是根据 composer.json 文件去获取依赖。确保了该库的每个使用者都能得到相同的依赖版本。
  3. composer global require “fxp/composer-asset-plugin:1.1.1” :
    申明依赖,增加新的依赖包到当前目录的 composer.json 文件中。
这个错误通常表示在调用`Composer`类的`__init__`方法时传递了多余的参数。在`docxcompose`库中,`Composer`类的`__init__`方法只接受一个`Document`类型的参数,用于指定合并后的文档。因此,您需要确保在调用`Composer`类的`__init__`方法时只传递一个参数。 针对您的代码报错信息,最有可能的原因是在创建`Composer`对象时多传了一个参数,可以将代码修改为以下形式: ```python from openpyxl import load_workbook from docxcompose.composer import Composer from docx import Document # 加载Excel文件 wb = load_workbook(r'D:\好记薪\工商资料生成\表格.xlsx') sheet = wb['sheet2'] # 获取需要插入的Docx文件路径 docx_files = [] if sheet['D2'].value: docx_files.append(r'D:\好记薪\工商资料生成\A公司登记申请书.docx') if sheet['E2'].value: docx_files.append(r'D:\好记薪\工商资料生成\B股东会决议.docx') if sheet['F2'].value: docx_files.append(r'D:\好记薪\工商资料生成\C章程.docx') if sheet['G2'].value: docx_files.append(r'D:\好记薪\工商资料生成\D股权转让协议.docx') if sheet['H2'].value: docx_files.append(r'D:\好记薪\工商资料生成\E有关债务清偿及担保情况说明.docx') # 创建模板Docx template_docx = Document('template.docx') # 将需要插入的Docx文件逐个加到模板末尾 if docx_files: composer = Composer(template_docx) for docx_file in docx_files: composer.append(Document(docx_file)) composer.save('merged.docx') ``` 在以上代码中,去掉了原本在创建`Composer`对象时的第二个参数`Document()`,即只传递了模板docx文件的`Document`对象作为参数。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值