小编Ben*_*son的帖子

Git-SVN克隆这一切什么时候结束?

我开始按照这篇文章执行从 SVN 到 GIT 的迁移。
6天前,我执行了这个:

git svn fetch
Run Code Online (Sandbox Code Playgroud)

而且它还在运行!我可以看到控制台日志不断更改修订号,并且我可以看到目录的大小不断增长。目前是12GB。

所以我的 SVN 存储库很大,我明白,它还有很多分支,但没有帮助。问题是有没有办法查看当前进度的百分比是多少?我只是想知道已经完成了多少百分比的获取。

svn git git-svn

5
推荐指数
1
解决办法
2353
查看次数

使用 WinSCP 在批处理文件中使用带空格的路径

我创建了 WinSCP 批处理文件来删除远程服务器上的文件。它工作正常,但不适用于带空格的文件夹。

例如,以下批处理文件正在运行:

cd C:\Program Files\WinSCP
winscp.com /command ^
    "open sftp://user:pwd@host" ^
    "cd /home/test/Desktop/india" ^
    "rm int.txt" ^ 
Run Code Online (Sandbox Code Playgroud)

但下面的批处理文件不起作用

cd C:\Program Files\WinSCP
winscp.com /command ^
    "open sftp://user:pwd@host" ^
    "cd /home/test/Desktop/india & nepal" ^
    "rm int.txt" ^ 
Run Code Online (Sandbox Code Playgroud)

india & nepal由于空间原因,我无法删除文件夹文件

任何人都可以提供解决方案吗?

sftp batch-file winscp

5
推荐指数
1
解决办法
4942
查看次数

如何在lxml中查找元素的直接子元素

我找到了一个具有特定类的对象:

THREAD = TREE.find_class('thread')[0]
Run Code Online (Sandbox Code Playgroud)

现在我想获取<p>它的直接子元素的所有元素。

我试过:

THREAD.findall("p")

THREAD.xpath("//div[@class='thread']/p")
Run Code Online (Sandbox Code Playgroud)

但所有这些都返回<p>this 内的所有元素<div>,无论它<div>是否是它们最近的父元素。

我怎样才能让它发挥作用?

编辑:

示例 HTML:

<div class='thread'>
   <p> <!-- 1 -->
      <!-- Can be some others <p> objects inside, which should not be counted -->
   </p> 
   <p><!-- 2 --></p>
</div>
<div class='thread'>
   <p>[...]</p>
   <p>[...]</p>
</div>
Run Code Online (Sandbox Code Playgroud)

脚本应该找到两个对象<p>,它们是 的子对象THREAD。我应该收到两个对象的列表,在示例 HTML 的注释中标记为“1”和“2”。

编辑2:

由于人们感到困惑,还有一个澄清:

THREAD是存储在变量中的一些对象,可以是任何 html 元素。我想找到 的<p>直接子对象THREAD。这些<p>元素不能位于THREAD任何位于其内部的元素的外部或内部THREAD

python xpath lxml

5
推荐指数
1
解决办法
8801
查看次数

如何向 GitHub GraphQL API 发出未经身份验证的请求

我正在尝试使用 GitHub graph API 发出请求并仅获取我需要的详细信息,即。某些公共仓库上的星星数量。使用 V3 (REST) api 获取存储库详细信息的未经身份验证的请求工作正常,但它包含我不需要的存储库的一百万个详细信息,我只需要存储库上的星星数量。

当我提出以下请求时:

query {
  repository(owner: "facebook", name: "react") {
    stargazers {
      totalCount
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

在 javascript 中使用fetch它响应401 Unauthorized

query {
  repository(owner: "facebook", name: "react") {
    stargazers {
      totalCount
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

我需要在公共网站上显示数据,因此无法使用 GitHub 帐户中的令牌进行身份验证。
有没有什么方法可以在不进行身份验证的情况下发出请求,也许有一些解决方法。还是不可能?

github graphql

5
推荐指数
1
解决办法
1305
查看次数

ADB推送错误:复制失败:不是目录

所以我只是想修改家庭成员手机上的主机文件。我已将手机置于调试模式并提取主机文件,对其进行编辑,但是当我尝试推送它时,我收到消息“adb:错误:无法将‘D:/hosts\hosts’复制到‘/system’ /etc/hosts/hosts':远程无法创建文件:不是目录”

这是我使用过的命令:

adb pull /system/etc/hosts D:\hosts
/system/etc/hosts: 1 file pulled. 0.0 MB/s (56 bytes in 0.003s)

adb push D:\hosts /system/etc/
adb: error: failed to copy 'D:\hosts\hosts' to '/system/etc/hosts/hosts': remote couldn't create file: Not a directory
Run Code Online (Sandbox Code Playgroud)

这是我第一次使用 android debug/adb,我读过的其他内容都没有帮助。提前致谢。

编辑:所以我取得了一些进展。我意识到主机文件不在主机目录中,所以我将其更改为adb push D:\hosts /system/etc仍然不起作用,但adb push D:\hosts\hosts /system/etc给了我响应adb: error: failed to copy 'D:\hosts\hosts' to '/system/etc/hosts': remote couldn't create file: Read-only file system 所以看起来我的问题现在在adb shell chmod

EDIT2:所以经过一些更多的研究,我在 Android 上发现了这个只读文件系统。当我尝试时,mount -o rw,remount /system我得到了mount: …

android push file hosts adb

5
推荐指数
0
解决办法
5483
查看次数

Android dex2oat build:错误:Dex2oat 无法编译启动映像

构建Android 9.0

\n
\n

错误:Dex2oat 无法编译启动映像。引导类路径可能不一致。使用 ART_BOOT_IMAGE_EXTRA_ARGS=\xe2\x80\x93runtime-arg -verbose: verifier 重建以查看验证错误。

\n
\n

android build

5
推荐指数
1
解决办法
5411
查看次数

如何在 python 中获取电子邮件接收/发送的日期

我有一个程序需要读取电子邮件并验证它们是否来自本月,然后再继续。

我通过以下代码获取电子邮件信息

import email
import smtplib
import imaplib
mail = imaplib.IMAP4_SSL('redacted', 993)
mail.login(username, bytes(password).decode('utf-8')) #password is bytes that have been decrypted
msg_data2 = [] #My template allows for multiple email data to be appended
mailbox_data = mail.list()
mail.select('INBOX', readonly=True)
result, msg_ids = mail.search(None, f'(SEARCH CRITERIA REDACTED)')
lister = msg_ids[0].split()
most_recent = lister[-1]
result2, msg_data = mail.fetch(most_recent, '(RFC822)')
msg_data2.append(msg_data)
raw = email.message_from_bytes(msg_data[0][1])
Run Code Online (Sandbox Code Playgroud)

从这里,我可以从我的电子邮件中获取符合搜索条件的附件,以前,供应商会根据其工作运行的月份正确命名文件。现在有些不是,所以我试图检查电子邮件发送或接收的日期。

python email

5
推荐指数
1
解决办法
7580
查看次数

如何使用 selenium (python) 连接到现有的 Firefox 实例

有没有办法打开 Firefox 浏览器,然后使用 selenium 连接到它?我知道这可以在 chrome 上通过在命令行中启动它并使用--remote-debugging-port如下参数来实现:

import subprocess
from selenium import webdriver
from selenium.webdriver.chrome.options import Options


subprocess.Popen('"C:/Program Files (x86)/Google/Chrome/Application/chrome.exe" --remote-debugging-port=9222', shell=True)
        
options = Options()
options.add_experimental_option("debuggerAddress", "127.0.0.1:9222")
driver = webdriver.Chrome(executable_path=PATH, options=options)
Run Code Online (Sandbox Code Playgroud)

这可以在火狐中完成吗?我已经搜索和检查与此相关的问题有一段时间了,但没有运气。
我发现的唯一线索是 geckodriver 有一个--connect-existing参数,但我不知道如何使用它。如何将参数传递给 geckodriver 并在 selenium 中使用它?

任何帮助,将不胜感激。如果无法完成,请告诉我。谢谢

编辑: 好的,我已经取得了一些进展,我知道如何将 geckodriver args 传递给 selenium:

driver = webdriver.Firefox(service=Service(PATH, service_args=['--marionette-port', '9394', '--connect-existing']))
Run Code Online (Sandbox Code Playgroud)

现在的问题是,即使我使用这样的调试器服务器启动 Firefox:
firefox.exe -marionette -start-debugger-server <PORT>
当我运行代码时,它会引发此错误消息:

Traceback (most recent call last):
  File "c:\Users\maxis\Desktop\Python\Freelance\Application for Opening Web Browsers\browsers\firefox.py", line 107, in <module>
    driver = …
Run Code Online (Sandbox Code Playgroud)

python firefox selenium-webdriver geckodriver

5
推荐指数
1
解决办法
6927
查看次数

我可以使用 yt-dlp 从播放列表中仅提取一个视频信息吗?

这是我使用 Python 的代码(简化版本):

import yt_dlp

YDL_OPTIONS = {
    'format': 'bestaudio*',
    'noplaylist': True,
}

with yt_dlp.YoutubeDL(YDL_OPTIONS) as ydl:
    info = ydl.extract_info(url, download=False)
Run Code Online (Sandbox Code Playgroud)


当网址定向到播放列表时(例如https://www.youtube.com/playlist?list=PLlrATfBNZ98dudnM48yfGUldqGD0S4FFb),就会出现问题

这是输出:

import yt_dlp

YDL_OPTIONS = {
    'format': 'bestaudio*',
    'noplaylist': True,
}

with yt_dlp.YoutubeDL(YDL_OPTIONS) as ydl:
    info = ydl.extract_info(url, download=False)
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,“noplaylist”选项在这种情况下不起作用。

是否有选项或功能ydl仅提取整个播放列表中的一个视频信息,例如第一个视频信息?

python youtube youtube-dl yt-dlp

5
推荐指数
1
解决办法
5975
查看次数

如何防止个人或团队编辑特定存储库的基于 GitHub 操作的工作流程?

我有一个 GiHub 存储库,其中包含基于 GitHub 操作的工作流程 ( /.github/workflows/build.yml) 来进行 CI 构建。

我来自 DevOps 团队,我的情况是,开发团队的人员不允许更改 CI 管道,他们可以在功能分支上更改任何他们想要的内容,除了/.github/workflows/build.yml.

如何防止开发人员更改 GitHub 工作流程以查看其应用程序更改通过不同类型的集成构建质量检查?

除了下面提到的选项之外,还有其他更好的方法来实现这一目标吗?

1]  Through PR reviews
2]  Script/automation to validate PR to see if dev did any changes to (/.github/workflows/build.yml)
Run Code Online (Sandbox Code Playgroud)

continuous-integration github github-actions

5
推荐指数
1
解决办法
1002
查看次数