将值浮点到文件中。当我尝试使用 .write() 时,它将输入作为字符串。我想这确实是 Python 的基础,但我对它很陌生。希望大家不要对这个问题生气:D
with open('C:/Python35/sample.txt', 'w') as f:
data = [70, 60, 55, 75, 95, 90, 80, 80, 85, 100]
for i in data:
f.write('%d \n' % i)
with open('C:/Python35/sample.txt', 'r', encoding='utf-8') as g:
data = g.readlines()
print(data)
Run Code Online (Sandbox Code Playgroud)
如果我运行这个,我可以得到如下结果。
['70 \n', '60 \n', '55 \n', '75 \n', '95 \n', '90 \n', '80 \n', '80 \n', '85 \n', '100 \n']
Run Code Online (Sandbox Code Playgroud)
它是字符串列表,而不是 int 值。(还想知道为什么“数据”列表中有“\n”!)
据我了解,ChromeDriver本身并没有设置背景,CSS设置了背景。因此,如果背景是透明的,为什么我没有得到透明的屏幕截图?
这是所谓透明网站的屏幕截图:
相同的屏幕截图,但背景中有一个红色div以显示透明度应位于的位置:

这是我的代码:
from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from datetime import datetime
options = webdriver.ChromeOptions()
options.add_argument('headless')
driver = webdriver.Chrome(chrome_options=options)
driver.set_window_size(2560, 1600)
driver.get('https://twitter.com/realDonaldTrump/status/516382177798680576')
# driver.execute_script("$('body').append(`<div style='background: red; width: 100%; height: 100%;'></div>`);")
driver.save_screenshot('screenshots/' + str(datetime.now()) + '.png')
driver.quit()
Run Code Online (Sandbox Code Playgroud)
我将如何创建该屏幕截图的透明版本?
*编辑* 我总结了如何完成此任务。接受的答案帮助我找到了可以解决的地方,这就是我想要的。但是,这个要点是解决我的问题的正确方法:https : //gist.github.com/colexyz/f58834ff09ab07e3c1164667b753e77a