我正在使用regex101.com来学习正则表达式。
有时我想Tab在 regex101.com 的 TEST STRING 字段中插入一个字符。
但是,当我选择“测试字符串”字段并按键盘上的 Tab 键时,它不会在“测试字符串”字段中输入制表符,而只是将我移至浏览器页面中的下一个可选功能。
我注意到我已经做了一些谷歌搜索,但到目前为止还无法找到如何在 TEST STRING 字段中添加制表符的答案。尽管我确信可以做到这一点,因为我看过一些视频,演示者成功地将制表符添加到字段中。
我注意到我使用的是 Windows 10,浏览器是 Google Chrome。
如果有人能提供答案,我将不胜感激。
我想学习如何使用生成器的返回值(但这不是我现在关心的)。
经过查找,他们说我可以获取StopIteration生成器耗尽时的返回值,所以我用以下代码进行了测试:
def my_generator():
yield 1
yield 2
yield 3
return "done"
def exhaust_generator(_gen):
print("===============================================\n")
print("exhaust_generator")
try:
while True:
print(next(_gen))
except StopIteration as e:
print(f"Return value: '{e.value}'")
def exhaust_generator_iter(_gen):
print("===============================================\n")
print("exhaust_generator_iter")
try:
for i in _gen:
print(i)
print(next(_gen))
except StopIteration as e:
print(f"Return value: {e.value}")
gen = my_generator()
gen2 = my_generator()
exhaust_generator(gen)
exhaust_generator_iter(gen2)
Run Code Online (Sandbox Code Playgroud)
===============================================
exhaust_generator
1
2
3
Return value: 'done'
===============================================
exhaust_generator_iter
1
2
3
Return value: None
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,耗尽生成器的两个版本的返回值不同,我想知道为什么。
搜索了谷歌,但没有帮助。
我正在尝试为与我的 selenium 设置类似的 python 使用 playwright 进行自定义设置,但是我对 Node.js 一点也不熟悉,我能找到的唯一有用的指南是:https : //playwright.dev/ #version=v1.4.2&path=docs%2Finstallation.md&q=skip-browser-downloads
所以我的问题是:如果我只想安装带有自定义 chrome 路径的 chrome 库(我需要使用特定的 chrome 版本),我该如何使用 pip 安装?节点指南使用环境变量。它们也适用于 pip 吗?
PS:pip search playwright没有显示playwright-chrome在上面链接提到的搜索结果中。
我使用 python 生成大量具有随机内容的 elasticsearch 文档,并使用elasticsearch-py对其进行索引。
简化的工作示例(只有一个字段的文档):
from elasticsearch import Elasticsearch
from random import getrandbits
es_client = Elasticsearch('https://elastic.host:9200')
for i in range(1,10000000):
document = {'my_field': getrandbits(64)}
es_client.index(index='my_index', document=document)
Run Code Online (Sandbox Code Playgroud)
由于这会对每个文档发出一个请求,因此我尝试通过使用 API 发送 1000 个文档块来加快速度_bulk。然而,到目前为止我的尝试还没有成功。
我对文档的理解是,您可以将 iterable 传递给bulk(),所以我尝试了:
from elasticsearch import Elasticsearch
from random import getrandbits
es_client = Elasticsearch('https://elastic.host:9200')
document_list = []
for i in range(1,10000000):
document = {'my_field': getrandbits(64)}
document_list.append(document)
if i % 1000 == 0:
es_client.bulk(operations=document_list, index='my_index')
document_list = []
Run Code Online (Sandbox Code Playgroud)
但这会导致
elasticsearch.BadRequestError: BadRequestError(400, 'illegal_argument_exception', '格式错误的操作/元数据行 …