import os
# path to main directory
path = '/your/path'
# table
files = {
'file_1.txt': 'dir_1',
'file_2.txt': 'dir_1/dir_2',
'file_3.txt': 'dir_1/dir_2/dir_3'
# others
}
# moving files
for file, directory in files.items():
path_file = os.path.join(path, file)
path_dir = os.path.join(path, directory)
# checking for existence and creating directories if needed
if not os.path.exists(path_dir):
os.makedirs(path_dir)
# checking for existence of the file in the target directory
if os.path.exists(os.path.join(path_dir, file)):
print(f"File {file} already exists in directory {directory}, skip.")
else:
os.rename(path_file, os.path.join(path_dir, file))
print(f"The {file} file has been moved to a folder {directory}, success.")
# example moving:
#
# /your/path
# |-- /dir_1/file_1.txt
# |-- /dir_1/dir_2/file_2.txt
# |-- /dir_1/dir_2/dir_3/file_3.txt
Я могу как-то отследить эту ошибку (не в определенной части кода, а вообще где угодно), в положительном случае
from jspybridge import JSPyBridge
bridge = JSPyBridge()
try:
# код, который отработает без ошибок
except jspybridge.JSPyBridgeError as e:
# код, который выбросит исключение, например, при краше Nodejs
print(f"ОшибкО: {e}")
import {JSPyBridge, JSPyBridgeError} from 'jspybridge';
const bridge = new JSPyBridge();
try {
// код, который отработает без ошибок
} catch (error) {
if (error instanceof JSPyBridgeError) {
// код, который выбросит исключение, например, при краше Nodejs
console.error(`ОшибкО: ${error.message}`);
}
}
я могу ее просто игнорировать или нужно как-то перезапустить код?
Либо возможно как-то избавиться от этой ошибки?
Но сейчас я использую wordpress и wp_enqueue_script. Можно ли как-то добавить "module" к wp_enqueue_script?
function my_scripts() {
wp_enqueue_script('unique_script_id', get_template_directory_uri() . '/path/script.js', [], null, true);
wp_script_add_data('unique_script_id', 'type', 'module');
}
add_action('wp_enqueue_scripts', 'my_scripts');
Как быть, если мой сайт предназначен не на ру аудиторию?
Можно ли как-то иначе это сделать или только такой вариант?
И еще вариант, может быть так, если я делаю сайт с доменом .com и он предназначен исключительно не на Ру аудиторию т.к там даже перевода на русский не будет, то я могу использовать зарубежный хостинг и ничего не делать для локализации данных в рф? Тип, если у меня целевая аудитория другая
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.by import By
from selenium.common.exceptions import NoSuchElementException
import time
url = 'https://discord.com/channels/1097401827202445382/1097674067601010709'
# driver
driver = webdriver.Chrome()
driver.get(url)
print('your manual authorization, the script is waiting for 30 seconds')
time.sleep(30)
try:
print('find and click element button friends')
button_element = driver.find_element(By.XPATH, '//*[@id="app-mount"]/div[2]/div[1]/div[1]/div/div[2]/div/div/div/div/div[3]/section/div/div[2]/div[4]')
button_element.click()
except NoSuchElementException:
print('error: element button friends not found')
time.sleep(5)
driver.quit()
exit()
time.sleep(5)
try:
print('find scroll element')
element = driver.find_element(By.XPATH, '//*[@id="app-mount"]/div[2]/div[1]/div[1]/div/div[2]/div/div/div/div/div[3]/div[2]/div[2]/aside/div')
except NoSuchElementException:
print('error: scroll element not found')
time.sleep(5)
driver.quit()
exit()
print('move cursor to element')
action = ActionChains(driver)
action.move_to_element(element).perform()
print('scroll down')
driver.execute_script('arguments[0].scrollTop += 300', element)
print('mission complete, thanks to Uncle Misha')
time.sleep(5)
print('exit')
driver.quit()
# your manual authorization, the script is waiting for 30 seconds
# find and click element button friends
# find scroll element
# move cursor to element
# scroll down
# mission complete, thanks to Uncle Misha
exit
import requests
url = "http://detailing69.ru/wb_cookies.json"
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'
}
res = requests.get(url, headers=headers)
if res.status_code == 200:
print(res.json())
else:
print(f"ОшибкО: {res.status_code}")
# [{'seller': 'Оксана ', 'cookies': {'general': '1', 'statistics': '2', 'supplies': '3', 'advertisement': '4'}}]
было бы неплохо понять на каком этапе присваиваются эти ключи и перезаписать имеющиеся куки на новые
import requests
from http.cookiejar import CookieJar
# initial cookies
initial_cookies = {}
session = requests.Session()
session.cookies = CookieJar()
# set cookies
session.cookies.update(initial_cookies)
# post
response = session.post(
'https://seller-supply.wildberries.ru/ns/sm-supply/supply-manager/api/v1/supply/listSupplies',
headers=headers,
json=json_data,
)
# get updated cookies
updated_cookies = session.cookies.get_dict()
# check new cookies
if initial_cookies != updated_cookies:
print("Свежее печенье.")
print("Старье:", initial_cookies)
print("Новье:", updated_cookies)
else:
print("Свежее печенье не завозилось, расходимся.")
был бы рад если кто-нибудь объяснит как в принципе присваиваются куки
Как с помощью джанго на бэке вычислять из какого домена был послан запрос и в зависимости от ответа применять те или иные настройки?
class CustomMiddleware:
def __init__(self, get_response):
self.get_response = get_response
def __call__(self, request):
d = request.get_host().split(':')[0]
if d == 'www.prod.com':
settings = importlib.import_module('project.config_prod')
elif d == 'www.test.com':
settings = importlib.import_module('project.config_test')
else:
settings = importlib.import_module('project.config')
request.settings = settings
response = self.get_response(request)
return response
Как сделать исключение для Logout?
# .htaccess
RewriteEngine On
# if url /wp-login.php
RewriteCond %{QUERY_STRING} action=logout [NC]
RewriteRule ^wp-login\.php$ - [L]
# else other rulles
RewriteCond %{THE_REQUEST} \?
RewriteCond %{QUERY_STRING} !^p=
RewriteCond %{REQUEST_URI} !^/wp-admin
RewriteRule .? https://site.com%{REQUEST_URI}? [R=301,L]
Есть потребность сделать часть функционала сайта на react, реализуется такое вообще или нет?)