正如标题所述,如果我通过pgAdmin4连接到我的heroku posgresql数据库,我会看到许多其他我无法访问的数据库.
我知道某处必须有一个重写DB字段,但我找不到它.
在pgAdmin4中,它不在此处所述的高级选项卡中:
我使用OpenCV中的facerecognizer创建了一个简单的面部识别功能.它可以很好地处理来自人的图像.
现在我想通过使用手写字符而不是人来进行测试.我遇到了MNIST数据集,但是他们将图像存储在一个我从未见过的奇怪文件中.
我只需从中提取一些图像:
train-images.idx3-ubyte
Run Code Online (Sandbox Code Playgroud)
并将它们保存在文件夹中 .gif
或者我想念这个MNIST的事情.如果是,我在哪里可以获得这样的数据集?
编辑
我也有gzip文件:
train-images-idx3-ubyte.gz
Run Code Online (Sandbox Code Playgroud)
我试图阅读内容,但show()不起作用,如果read()我看到随机符号.
images = gzip.open("train-images-idx3-ubyte.gz", 'rb')
print images.read()
Run Code Online (Sandbox Code Playgroud)
编辑
通过使用以下方式管理以获得一些有用的输出:
with gzip.open('train-images-idx3-ubyte.gz','r') as fin:
for line in fin:
print('got line', line)
Run Code Online (Sandbox Code Playgroud)
不知何故,我现在必须将其转换为图像,输出:
用户可以下载CSV格式的查询结果。该文件很小(几个KB),但是内容很重要。
第一种方法是使用php输出缓冲区php://:
$callback = function() use ($result, $columns) {
$file = fopen('php://output', 'w');
fputcsv($file, $columns);
foreach($result as $res) {
fputcsv($file, array($res->from_user, $res->to_user, $res->message, $res->date_added));
}
fclose($file);
};
return response()->stream($callback, 200, $headers);
Run Code Online (Sandbox Code Playgroud)
第二种方法是在laravels存储系统中创建一个新文件夹,并将其设置为private,然后从那里下载文件。下载后,您甚至可以删除文件:
'csv' => [
'driver' => 'local',
'root' => storage_path('csv'),
'visibility' => 'private',
],
Run Code Online (Sandbox Code Playgroud)
这是创建/下载代码:
$file = fopen('../storage/csv/file.csv', 'w');
fputcsv($file, $columns);
foreach($result as $res) {
fputcsv($file, array($res->from_user, $res->to_user, $res->message, $res->date_added));
}
fclose($file);
return response()->make(Storage::disk('csv')->get('file.csv'), 200, $headers);
Run Code Online (Sandbox Code Playgroud)
下载后,此返回将立即删除文件:
return response()->download(Storage::disk('csv')->path('file.csv'))
->deleteFileAfterSend(true);
Run Code Online (Sandbox Code Playgroud)
有什么会更安全?有什么更好的方法?我目前倾向于使用存储的第二种方法。
我有这条带有查询参数的路线lang:
http://localhost:4200/?lang=de
Run Code Online (Sandbox Code Playgroud)
以下示例均不起作用,它始终为 null 或未定义
import { ActivatedRoute } from '@angular/router';
constructor(private route: ActivatedRoute) {
console.log(this.route.snapshot.params.lang);
console.log(this.route.snapshot.queryParamMap.get('lang'));
}
ngOnInit(): void {
this.route.queryParams.subscribe(params => {
let lang = params['lang'];
console.log(lang);
});
console.log(this.route.snapshot.queryParamMap.get('lang'));
console.log(this.route.snapshot.params.lang);
}
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?我现在已经阅读了几本指南,甚至有一些关于 Angular 10 的指南。每个指南都显示了上述示例,但我仍然无法获取 的值lang。
我有问题在我的heroku python app(flask)上安装wkhtmltopdf二进制文件.
一年前(python 2)我已经有了一个问题,但我能够通过首先添加wkhtmltopdf-pack到需求并将其安装在heroku上然后将config var设置为来解决它WKHTMLTOPDF_BINARY=wkhtmltopdf-pack.这是我的旧帖子
现在问题:
我试图对python 3使用相同的方法,但没有版本的wkhtmltopdf-pack工作,每次推送被拒绝,我无法安装它.
我在要求中尝试了这些版本:
wkhtmltopdf-pack==0.12.5
wkhtmltopdf-pack==0.12.4
wkhtmltopdf-pack==0.12.3
wkhtmltopdf-pack==0.12.3.0.post1
wkhtmltopdf-pack==0.12.2.4
Run Code Online (Sandbox Code Playgroud)
我收到这些错误:
No matching distribution
Run Code Online (Sandbox Code Playgroud)
要么
error: can't copy 'bin/wkhtmltopdf-pack': doesn't exist or not a regular file
Run Code Online (Sandbox Code Playgroud)
我记得有一次它告诉我有一个SyntaxError它无法解码的东西.
替代方法:
看来也可以使用buildpack,所以我尝试添加一个buildpack:
heroku buildpacks:add https://github.com/dscout/wkhtmltopdf-buildpack.git
Run Code Online (Sandbox Code Playgroud)
我看到已经添加了buildpack,但是没有安装,并且wkhtmltopdf也没有配置var.我不明白如何触发安装,在buildpacks的所有文档中都写了"添加buildpack并准备好了".
试图创建PDF在这里给我一个服务器错误:
OSError: No wkhtmltopdf executable found: "b''"
Run Code Online (Sandbox Code Playgroud)
编辑:
我设法安装buildpack:
推送成功,但没有创建配置变量,我不知道二进制的路径是什么.
编辑
我能够通过heroku bash找到这些文件:
app bin dev等lib lib64 lost + found proc sbin sys tmp usr var
/ $ cd app
~ $ cd vendor
~/vendor …Run Code Online (Sandbox Code Playgroud) 从昨天开始,我试图了解如何在其他视图中使用特定视图中的编码base64图像.
我需要用form.company_logo_image_path.data调整大小的新图像替换原来的图像.新调整大小的图像通过AJAX发送到新视图.
这是我的AJAX:
var dataurl = canvas.toDataURL("image/png");
$.ajax({
type: "POST",
url: "/profil/unternehmen-bearbeiten/resize-image",
data:{
a: dataurl
}
}).done(function() {
console.log('sent');
});
Run Code Online (Sandbox Code Playgroud)
我创建了一个新视图,其中图像被解码并存储在body变量中:
@app.route('/profil/unternehmen-bearbeiten/resize-image', methods=["POST"])
def resize_image():
data_url = request.values['a']
content = data_url.split(';')[1]
image_encoded = content.split(',')[1]
body = base64.decodestring(image_encoded.encode('utf-8'))
return body
Run Code Online (Sandbox Code Playgroud)
我通过将图像保存到本地计算机上的文件夹来测试它,并且它可以正常工作,因此body变量可以正确存储调整大小的图像.
现在我需要将此图像发送到其他视图,然后将其上传到AWS3,我将使用此图像而不是form.company_logo_image_path.data:
@app.route('/profil/unternehmen-bearbeiten', methods=["GET", "POST"])
@login_required
@check_confirmed
def edit_company():
the_company = Company.query.filter_by(users_id=current_user.id).first()
form = EditCompanyForm(obj=the_company)
used_file = the_company.company_logo_image_path
if form.validate_on_submit():
form.populate_obj(the_company)
imagedata = resize_image()
print "The", imagedata
if form.company_logo_image_path.data:
upload_image_to_aws('baubedarf', "userimages/", form.company_logo_image_path, the_company,'company_logo_image_path', the_company.company_name)
# …Run Code Online (Sandbox Code Playgroud) 我正在使用 Flaks python 和 sqlalchemy 连接到一个巨大的数据库,其中保存了很多统计信息。我需要使用这些统计数据创建一些有用的见解,因此我只需要读取/获取数据而无需修改。
我现在遇到的问题如下:
在访问表之前,我需要在模型文件中复制该表。例如,我Login_Data在数据库中看到该表。所以我进入我的模型并重新创建完全相同的表。
class Login_Data(Base):
__tablename__ = 'login_data'
id = Column(Integer, primary_key=True)
date = Column(Date, nullable=False)
new_users = Column(Integer, nullable=True)
def __init__(self, date=None, new_users=None):
self.date = date
self.new_users = new_users
def get(self, id):
if self.id == id:
return self
else:
return None
def __repr__(self):
return '<%s(%r, %r, %r)>' % (self.__class__.__name__, self.id, self.date, self.new_users)
Run Code Online (Sandbox Code Playgroud)
我这样做是因为否则我无法使用以下方式查询它:
some_data = Login_Data.query.limit(10)
Run Code Online (Sandbox Code Playgroud)
但这感觉没有必要,一定有更好的办法。如果模型已经定义了,那么重新创建模型还有什么意义呢?我在这里应该使用什么:
some_data = [SOMETHING HERE SO I DONT NEED TO RECREATE THE TABLE].query.limit(10)
Run Code Online (Sandbox Code Playgroud)
简单的问题,但我还没有找到解决方案。
出于营销原因,我正在使用硒打开一些浏览器窗口。我只是打开我的营销渠道,通过硒登录并开始工作。
问题是,在执行代码后,硒将关闭窗口。
到目前为止,所有解决方案都没有帮助。
我有13个浏览器窗口atm。,如下所示:
def open_instagram():
try:
# Connect
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument("--incognito")
browser = webdriver.Chrome('drivers/chromedriver.exe', chrome_options=chrome_options)
browser.set_window_size(1800, 900)
browser.get("https://www.instagram.com/accounts/login/?hl=de")
browser.find_element(By.NAME, 'username').send_keys('MYEMAIL', Keys.TAB, 'MYPW', Keys.ENTER)
except Exception as e:
print (e, 'Instagram')
open_instagram()
Run Code Online (Sandbox Code Playgroud)
我找到的最接近的解决方案是在脚本的末尾添加此内容,但是不知何故,它只会保持5个窗口打开,而不是关闭5个窗口并打开接下来的5个新窗口:
while True:
pass
Run Code Online (Sandbox Code Playgroud)
我只希望硒使所有浏览器窗口保持打开状态,直到我手动关闭它们为止。
我在悬停时实现了一个工具提示系统。为此,我使用 textmeshpro 文本和图像。该图像应该是一个简单的背景,具体取决于文本的长度,而文本的长度总是不同的。
如果我将鼠标悬停在某个元素上,textmeshpro 文本将被替换。背景图像被移动到元素上,并且大小将根据文本的长度而变化:
// Hover over slot in
public void OnPointerEnter(PointerEventData eventData) {
if (currentItem != null) {
Debug.Log("hover over slot item in");
GamePlay.EnableCanvas(GamePlay.GetHoverCanvas());
TextMeshProUGUI txtMeshPro = GamePlay.GetHoverCanvas().GetComponentInChildren<TextMeshProUGUI>();
Debug.Log(currentItem.GetItemDescription(currentItem));
txtMeshPro.text = currentItem.GetItemDescription(currentItem);
var hoverCanvasText = txtMeshPro.GetComponent<RectTransform>();
var hoverCanvasTextBG = GamePlay.GetHoverCanvas().GetComponentInChildren<Image>().GetComponent<RectTransform>();
hoverCanvasText.position = new Vector3(this.GetComponent<RectTransform>().position.x, this.GetComponent<RectTransform>().position.y + 50, 0);
hoverCanvasTextBG.position = new Vector3(this.GetComponent<RectTransform>().position.x, this.GetComponent<RectTransform>().position.y + 50, 0);
hoverCanvasTextBG.sizeDelta = new Vector2(txtMeshPro.textBounds.size.x + 15, txtMeshPro.textBounds.size.y + 15);
// No clue why image is not resized properly on first hover
} …Run Code Online (Sandbox Code Playgroud) 我有自己的 ubuntu 19 服务器。
注意:我需要一个用于视频聊天 Web 应用程序的眩晕/转弯服务器。如果两个设备都在同一个网络中,它已经可以工作了。
我已经成功安装并配置了 coturn。我可以通过运行成功启动turnserver:
turnserver或nohup turnserver &在终端中。
注意:我SSH连接到我的服务器。
我还确保必要的端口已打开并使用netstat -tulpn.
我在测试时也重新启动了 coturn 几次sudo service coturn restart。
我在以下配置中使用这些配置turnserver.conf:
# Also tried 80
listening-port=3478
# Also tried 443
tls-listening-port=5349
listening-ip=<MY-IP4>
listening-ip=<MY-IP6>
relay-ip=<MY-IP4>
external-ip=<MY-IP4>
oauth
user=root:<password>
userdb=/var/lib/turn/turndb
no-stdout-log
Run Code Online (Sandbox Code Playgroud)
这是我在 js 中的 iceServers 配置,我相信它应该可以工作(我已经完成了很多其他组合)。
var pcConfig = {
'iceServers': [
{
'urls': 'stun:<MY-IP4>:80'
},
{
'urls': 'turn:<MY-IP4>:80',
'credential': '<PASSWORD>',
'username': 'root'
}
]
};
Run Code Online (Sandbox Code Playgroud)
我已经完成了大量不同的眩晕/转弯服务器组合,例如:
我使用了谷歌的 stun 服务器:stun.l.google.com:19302、stun2.l.google.com:19302 …