Я создал веб-страницу, используя python и флешку, и теперь на веб-странице у меня есть гиперссылки. Мне нужно сохранить каждую нажатую гиперссылку, скажем, в файле, а также отправить пользователя на эту страницу с гиперссылкой.
Я попытался настроить метод перенаправления фляги, но он только отправляет пользователя на страницу
это мой файл index.html
<html>
<body>
{% for names,links in my_list %}
<a href = {{links}} onclick={{ clever_function({{links}}) }} >{{names}}</p>
{% endfor %}
<script src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
<script src="http://netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script>
</body>
</html>
это код драйвера моего приложения фляги:
def clever_function(a):
print("sd"+a)
return True
app.jinja_env.globals.update(clever_function=clever_function)
#////////////////////////////////////
@app.route('/')
def index():
return render_template("index.html",my_list = zip(array_of_names,array_of_links))
я хочу знать, какие гиперссылки были нажаты в файле или массиве.
** РЕДАКТИРОВАТЬ: СЕЙЧАС Я ПОЛУЧАЮ ЭТУ ОШИБКУ: (НА ВЕБ-СТРАНИЦЕ)
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/flask/app.py", line 2309, in __call__
return self.wsgi_app(environ, start_response)
File "/usr/lib/python3/dist-packages/flask/app.py", line 2295, in wsgi_app
response = self.handle_exception(e)
File "/usr/lib/python3/dist-packages/flask/app.py", line 1741, in handle_exception
reraise(exc_type, exc_value, tb)
File "/usr/lib/python3/dist-packages/flask/_compat.py", line 35, in reraise
raise value
File "/usr/lib/python3/dist-packages/flask/app.py", line 2292, in wsgi_app
response = self.full_dispatch_request()
File "/usr/lib/python3/dist-packages/flask/app.py", line 1815, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/usr/lib/python3/dist-packages/flask/app.py", line 1718, in handle_user_exception
reraise(exc_type, exc_value, tb)
File "/usr/lib/python3/dist-packages/flask/_compat.py", line 35, in reraise
raise value
File "/usr/lib/python3/dist-packages/flask/app.py", line 1813, in full_dispatch_request
rv = self.dispatch_request()
File "/usr/lib/python3/dist-packages/flask/app.py", line 1799, in dispatch_request
return self.view_functions[rule.endpoint](**req.view_args)
File "/var/www/news-scraper/hello.py", line 205, in index
return render_template("index.html",my_list = zip(array_of_names,array_of_links))
File "/usr/lib/python3/dist-packages/flask/templating.py", line 134, in render_template
return _render(ctx.app.jinja_env.get_or_select_template(template_name_or_list),
File "/usr/lib/python3/dist-packages/jinja2/environment.py", line 869, in get_or_select_template
return self.get_template(template_name_or_list, parent, globals)
File "/usr/lib/python3/dist-packages/jinja2/environment.py", line 830, in get_template
return self._load_template(name, self.make_globals(globals))
File "/usr/lib/python3/dist-packages/jinja2/environment.py", line 804, in _load_template
template = self.loader.load(self, name, globals)
File "/usr/lib/python3/dist-packages/jinja2/loaders.py", line 125, in load
code = environment.compile(source, name, filename)
File "/usr/lib/python3/dist-packages/jinja2/environment.py", line 591, in compile
self.handle_exception(exc_info, source_hint=source_hint)
File "/usr/lib/python3/dist-packages/jinja2/environment.py", line 780, in handle_exception
reraise(exc_type, exc_value, tb)
File "/usr/lib/python3/dist-packages/jinja2/_compat.py", line 37, in reraise
raise value.with_traceback(tb)
File "/var/www/news-scraper/templates/index.html", line 6, in template
<a href = {{links}} onclick={{ clever_function({{links}}) }} >{{names}}</p>
File "/usr/lib/python3/dist-packages/jinja2/environment.py", line 497, in _parse
return Parser(self, source, name, encode_filename(filename)).parse()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 901, in parse
result = nodes.Template(self.subparse(), lineno=1)
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 883, in subparse
rv = self.parse_statement()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 130, in parse_statement
return getattr(self, 'parse_' + self.stream.current.value)()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 199, in parse_for
body = self.parse_statements(('name:endfor', 'name:else'))
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 165, in parse_statements
result = self.subparse(end_tokens)
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 875, in subparse
add_data(self.parse_tuple(with_condexpr=True))
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 620, in parse_tuple
args.append(parse())
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 432, in parse_expression
return self.parse_condexpr()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 437, in parse_condexpr
expr1 = self.parse_or()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 450, in parse_or
left = self.parse_and()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 459, in parse_and
left = self.parse_not()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 470, in parse_not
return self.parse_compare()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 474, in parse_compare
expr = self.parse_math1()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 496, in parse_math1
left = self.parse_concat()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 507, in parse_concat
args = [self.parse_math2()]
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 517, in parse_math2
left = self.parse_pow()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 528, in parse_pow
left = self.parse_unary()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 547, in parse_unary
node = self.parse_postfix(node)
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 676, in parse_postfix
node = self.parse_call(node)
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 790, in parse_call
args.append(self.parse_expression())
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 432, in parse_expression
return self.parse_condexpr()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 437, in parse_condexpr
expr1 = self.parse_or()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 450, in parse_or
left = self.parse_and()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 459, in parse_and
left = self.parse_not()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 470, in parse_not
return self.parse_compare()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 474, in parse_compare
expr = self.parse_math1()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 496, in parse_math1
left = self.parse_concat()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 507, in parse_concat
args = [self.parse_math2()]
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 517, in parse_math2
left = self.parse_pow()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 528, in parse_pow
left = self.parse_unary()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 546, in parse_unary
node = self.parse_primary()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 581, in parse_primary
node = self.parse_dict()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 661, in parse_dict
key = self.parse_expression()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 432, in parse_expression
return self.parse_condexpr()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 437, in parse_condexpr
expr1 = self.parse_or()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 450, in parse_or
left = self.parse_and()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 459, in parse_and
left = self.parse_not()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 470, in parse_not
return self.parse_compare()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 474, in parse_compare
expr = self.parse_math1()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 496, in parse_math1
left = self.parse_concat()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 507, in parse_concat
args = [self.parse_math2()]
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 517, in parse_math2
left = self.parse_pow()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 528, in parse_pow
left = self.parse_unary()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 546, in parse_unary
node = self.parse_primary()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 581, in parse_primary
node = self.parse_dict()
File "/usr/lib/python3/dist-packages/jinja2/parser.py", line 662, in parse_dict
self.stream.expect('colon')
File "/usr/lib/python3/dist-packages/jinja2/lexer.py", line 384, in expect
self.name, self.filename)
jinja2.exceptions.TemplateSyntaxError: expected token ':', got '}'
Я использую "{{links}}", чтобы я мог передать URLкод питона