export-regex-csv
dgtlmoon 2 years ago
parent 5b281f2c34
commit 23d0679d13

@ -0,0 +1,24 @@
from distutils.util import strtobool
from flask import Blueprint, request, make_response
from flask_login import login_required
import os
import logging
from changedetectionio.store import ChangeDetectionStore
def construct_blueprint(datastore: ChangeDetectionStore):
browser_steps_blueprint = Blueprint('browser_steps', __name__, template_folder="templates")
@login_required
@browser_steps_blueprint.route("/extract-regex", methods=['POST'])
def browsersteps_ui_update():
import time
return {123123123: 'yup'}
return browser_steps_blueprint

@ -0,0 +1,40 @@
$(document).ready(function () {
$('#extract').click(function (e) {
download_csv_file();
});
//create CSV file data in an array
var csvFileData = [
['Alan Walker', 'Singer'],
['Cristiano Ronaldo', 'Footballer'],
['Saina Nehwal', 'Badminton Player'],
['Arijit Singh', 'Singer'],
['Terence Lewis', 'Dancer']
];
//create a user-defined function to download CSV file
function download_csv_file() {
//define the heading for each row of the data
var csv = 'Name,Profession\n';
//merge the data with CSV
csvFileData.forEach(function (row) {
csv += row.join(',');
csv += "\n";
});
//display the created CSV data on the web browser
document.write(csv);
var hiddenElement = document.createElement('a');
hiddenElement.href = 'data:text/csv;charset=utf-8,' + encodeURI(csv);
hiddenElement.target = '_blank';
//provide the name for the CSV file to be downloaded
hiddenElement.download = 'Famous Personalities.csv';
hiddenElement.click();
}
});

@ -23,6 +23,7 @@
<script type="text/javascript" src="{{url_for('static_content', group='js', filename='visual-selector.js')}}" defer></script> <script type="text/javascript" src="{{url_for('static_content', group='js', filename='visual-selector.js')}}" defer></script>
{% if playwright_enabled %} {% if playwright_enabled %}
<script type="text/javascript" src="{{url_for('static_content', group='js', filename='browser-steps.js')}}" defer></script> <script type="text/javascript" src="{{url_for('static_content', group='js', filename='browser-steps.js')}}" defer></script>
<script type="text/javascript" src="{{url_for('static_content', group='js', filename='extract.js')}}" defer></script>
{% endif %} {% endif %}
<div class="edit-form monospaced-textarea"> <div class="edit-form monospaced-textarea">
@ -37,6 +38,7 @@
<li class="tab"><a id="visualselector-tab" href="#visualselector">Visual Filter Selector</a></li> <li class="tab"><a id="visualselector-tab" href="#visualselector">Visual Filter Selector</a></li>
<li class="tab"><a href="#filters-and-triggers">Filters &amp; Triggers</a></li> <li class="tab"><a href="#filters-and-triggers">Filters &amp; Triggers</a></li>
<li class="tab"><a href="#notifications">Notifications</a></li> <li class="tab"><a href="#notifications">Notifications</a></li>
<li class="tab"><a href="#export">Export</a></li>
</ul> </ul>
</div> </div>
@ -374,6 +376,30 @@ Unavailable") }}
</fieldset> </fieldset>
</div> </div>
<div class="tab-pane-inner" id="export">
<div class="pure-control-group">
</div>
<fieldset>
<div class="pure-control-group">
<div>
Enter a regular-expression, all history snapshots will be scanned and where the regex
matches, it will exported along with the times-stamp.<br>
For a complete backup, use the <strong>Backup</strong> button<br>
</div>
<p>
<label>Scan and Extract</label>
<input name=regex type="text" placeholder="Example: Temperature (\d+)">
</p>
<span class="pure-form-message-inline">
The regex you enter will be stored for next time
</span>
<div class="pure-control-group">
<input class="pure-button pure-button-primary" id="extract" name="extract" type="button" value="Scan and Extract">
</div>
</div>
</fieldset>
</div>
<div id="actions"> <div id="actions">
<div class="pure-control-group"> <div class="pure-control-group">
{{ render_button(form.save_button) }} {{ render_button(form.save_button) }}

Loading…
Cancel
Save