Загрузите прямую ссылку jquery с помощью python с помощью urllib / запросов? [Дубликат]

Я сделал некоторые поиски по этой теме, наконец, получил некоторые пользовательские изменения

Для Workbench MySQL 6.3.7 Версия доступна графическая межфазная

  1. Запустите Workbench и выберите соединение .
  2. Перейдите в «Управление» или «Экземпляр» и выберите «Файл параметров».
  3. Если Workbench попросит вас получить разрешение на чтение конфигурационного файла, а затем разрешить его, дважды нажав OK.
  4. В центральном месте появится окно с файлами параметров администратора.
  5. Перейдите на вкладку InnoDB и проверьте файл innodb_large_prefix, если он не отмечен в разделе «Общие».
  6. установите значение параметра innodb_default_row_format в значение DYNAMIC.

Для версий ниже 6.3.7 прямые параметры недоступны, поэтому вам нужно перейти с командной строкой

  1. Запустить CMD в качестве администратора.
  2. Перейти Директору, где установлен сервер mysql. Большинство случаев его в «C: \ Program Files \ MySQL \ MySQL Server 5.7 \ bin», поэтому команда «cd \» «cd Program Files \ MySQL \ MySQL Server 5.7 \ bin».
  3. Теперь выполнить команду mysql -u userName - p databasescheema Теперь он запросил пароль соответствующего пользователя. Предоставьте пароль и войдите в подсказку mysql.
  4. Мы должны установить некоторые глобальные настройки, чтобы ввести приведенные ниже команды по одному набору глобальных innodb_large_prefix = on; установить глобальный innodb_file_format = barracuda; set global innodb_file_per_table = true;
  5. Теперь, в конце, мы должны изменить ROW_FORMAT требуемой таблицы по умолчанию своим COMPACT, мы должны установить его в DYNAMIC.
  6. использовать следующую команду alter table table_name ROW_FORMAT = DYNAMIC;
  7. Выполнено
35
задан dda 2 June 2012 в 13:40
поделиться

4 ответа

Используя PyV8 , я могу это сделать. Тем не менее, я должен заменить document.write на return, потому что нет DOM и, следовательно, нет document.

import PyV8
ctx = PyV8.JSContext()
ctx.enter()

js = """
function escramble_758(){
var a,b,c
a='+1 '
b='84-'
a+='425-'
b+='7450'
c='9'
document.write(a+c+b)
}
escramble_758()
"""

print ctx.eval(js.replace("document.write", "return "))

Или вы могли бы создать макет документа объекта

class MockDocument(object):

    def __init__(self):
        self.value = ''

    def write(self, *args):
        self.value += ''.join(str(i) for i in args)


class Global(PyV8.JSClass):
    def __init__(self):
        self.document = MockDocument()

scope = Global()
ctx = PyV8.JSContext(scope)
ctx.enter()
ctx.eval(js)
print scope.document.value
30
ответ дан Daniel F 17 August 2018 в 11:32
поделиться
  • 1
    Как установить PyV8? Когда я делаю python setup.py install, я получаю ОШИБКУ: вы должны установить V8_HOME в папку Google v8 или загрузить и построить его в первую очередь. & lt; code.google.com/p/v8/> ; При посещении этого проекта я вижу только 2 загрузки, benchmarks-v2.zip benchmarks-v1.zip. Ни у кого из них нет файлов py. – jerrymouse 13 April 2012 в 08:34
  • 2
    Я просто использую exe installer, потому что я использую Window. Я не уверен, как установить его на другие платформы. – Dikei 13 April 2012 в 08:36
  • 3
    Я нахожусь на mac .. Иногда окна такие классные .. – jerrymouse 13 April 2012 в 08:38
  • 4
    Я столкнулся с той же проблемой и ничего себе, это здорово. Он работает отлично. Теперь мне интересно, как я могу управлять подсказкой? помощь plz. – Academia 3 June 2012 в 12:34
  • 5
    PyV8 действительно действительно сломан! Прежде всего, для этого требуется очень конкретная версия Python и V8. Во-вторых, вам нужно угадать. – rdllopes 28 June 2018 в 08:36

Еще одно решение, как PyV8, похоже, не поддерживается и зависит от старой версии libv8.

PyMiniRacer Это оболочка вокруг движка v8, и она работает с новой версией и активно поддерживается.

pip install py-mini-racer

from py_mini_racer import py_mini_racer
ctx = py_mini_racer.MiniRacer()
ctx.eval("""
function escramble_758(){
    var a,b,c
    a='+1 '
    b='84-'
    a+='425-'
    b+='7450'
    c='9'
    return a+c+b;
}
""")
ctx.call("escramble_758")

И да, вы должны заменить document.write на return, поскольку другие предложили

4
ответ дан Dienow 17 August 2018 в 11:32
поделиться

Вы также можете использовать Js2Py, который написан на чистом питоне и способен выполнять и переводить javascript на python. Поддерживает практически весь JavaScript даже ярлыки, геттеры, сеттеры и другие редко используемые функции.

import js2py

js = """
function escramble_758(){
var a,b,c
a='+1 '
b='84-'
a+='425-'
b+='7450'
c='9'
document.write(a+c+b)
}
escramble_758()
""".replace("document.write", "return ")

result = js2py.eval_js(js)  # executing JavaScript and converting the result to python string 

Преимущества Js2Py включают переносимость и чрезвычайно легкую интеграцию с python (поскольку в основном JavaScript переводится на python).

Для установки:

pip install js2py
27
ответ дан Piotr Dabkowski 17 August 2018 в 11:32
поделиться
0
ответ дан Mirko 29 October 2018 в 15:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: