Inject/выполнить JavaScript из сценария PythonJavascript

Форум по Javascript
Ответить
Anonymous
 Inject/выполнить JavaScript из сценария Python

Сообщение Anonymous »

Я выполняю метод в своем скрипте Python, который запускает функцию в моем файле HTML: < /p>

Код: Выделить всё

def OnLoadingStateChange(self, browser, is_loading, **_):
if not is_loading:
self.container.page_loaded = True

blueprint_text = """
Begin Object Class=/Script/BlueprintGraph.K2Node_Event Name="K2Node_Event_1" ExportPath="/Script/BlueprintGraph.K2Node_Event'/Game/ANCIENT_DRAGON/ABP_AncientDragon.ABP_AncientDragon:EventGraph.K2Node_Event_1'"
NodePosX=3392
NodePosY=-64
NodeGuid=EC7283AA406DE84613834BA97BBD68F1
EventReference=(MemberParent="/Script/CoreUObject.Class'/Script/Engine.AnimInstance'",MemberName="AnimNotify_FootShake")
CustomFunctionName="AnimNotify_FootShake"
CustomProperties Pin (PinId=318791834E3D459539EC3B87A24112FB,PinName="OutputDelegate",Direction="EGPD_Output",PinType.PinCategory="delegate",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(MemberParent="/Script/Engine.AnimBlueprintGeneratedClass'/Game/ANCIENT_DRAGON/ABP_AncientDragon.ABP_AncientDragon_C'",MemberName="AnimNotify_FootShake",MemberGuid=EC7283AA406DE84613834BA97BBD68F1),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object
"""

js_code = f'renderBlueprint("{blueprint_text}");'
browser.ExecuteJavascript(js_code)
< /code>
Когда я исключаю ниже строку, она работает нормально, но при включении он дает ошибку, в которой говорится, что узел не может быть отображен. < /p>
CustomProperties Pin (PinId=318791834E3D459539EC3B87A24112FB,PinName="OutputDelegate",Direction="EGPD_Output",PinType.PinCategory="delegate",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(MemberParent="/Script/Engine.AnimBlueprintGeneratedClass'/Game/ANCIENT_DRAGON/ABP_AncientDragon.ABP_AncientDragon_C'",MemberName="AnimNotify_FootShake",MemberGuid=EC7283AA406DE84613834BA97BBD68F1),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
< /code>
Я пытался включить это в функцию, чтобы помочь форматированию, но это не имеет значения: < /p>
escaped_text = (
blueprint_text
.replace('\\', '\\\\')
.replace('\n', '\\n')
.replace('"', '\\"')
)
< /code>
Это функция в моем файле HTML: < /p>
function renderBlueprint(blueprintText) {
// Stop any existing renderer
if (renderer) {
renderer.stop();
playground.innerHTML = ''; // Clear the playground
}
// Create and start a new renderer
renderer = new window.blueprintUE.render.Main(
blueprintText,
playground,
{ height: "100vh" }
);
renderer.start();
Я загрузил здесь файл JS.>

Подробнее здесь: https://stackoverflow.com/questions/796 ... hon-script
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»