Изучил основы JavaScript, понял что всякие манипуляции DOM мне не нужны, потому что это не используется больше
Думаю такой, может мне надо выучить React?
Но есть почему-то ощущение что React в чистом виде мне не нужен, чтобы пользоваться Next.js.
Я остановился и понял что я занимаюсь какой-то фигней. Что я хватаю отовсюду понемногу знаний, но они не складываются в общую картинку.
Собственно вопрос: по какому пути лучше пойти, чтобы потихоньку прийти к желаемому?
При этом чтобы не потратить время впустую на изучения вещей, которые абсолютно не нужны.
// return true, if element visible
function isVisible(element) {
return window.getComputedStyle(element).display !== 'none';
}
// MutationObserver
const observer = new MutationObserver((mutations, obs) => {
const modal = document.querySelector('#modalWindow'); // modal selector
const dropdown = document.querySelector('#dropdownMenu'); // dropdown menu selector
// check is visible?
if (isVisible(modal) && isVisible(dropdown)) {
console.log('Element is visible');
obs.disconnect();
}
});
// config
const config = {
attributes: true,
attributeFilter: ['style']
}
// run
observer.observe(document.querySelector('#modalWindow'), config);
observer.observe(document.querySelector('#dropdownMenu'), config);
import requests
from bs4 import BeautifulSoup
# go to url
url = "example.com"
res = requests.get(url)
# pasing page
soup = BeautifulSoup(res.text, 'html.parser')
# search "Черновик" from span
els = soup.find_all(lambda tag: tag.name == "span" and "Черновик" in tag.text)
# ptint
for els in el:
print(el.text)
Можно ли форму с отзывами считать сбором данных?
Присутствуют поля : ФИО*, телефон, номер участка*.
time.sleep(1)
soup = BeautifulSoup(driver.page_source, features="lxml")
for i in range(57, 58):
# ...
soup = BeautifulSoup(driver.page_source, features="lxml")
# ...
Или сделать хотя бы какой-то контраст между ними?
@bot.command(pass_context=True)
@commands.has_permissions(administrator=True)
async def clean(ctx, limit: int):
await ctx.channel.purge(limit=limit)
await ctx.send('Cleared by {}'.format(ctx.author.mention))
await ctx.message.delete()
@clean.error
async def clear_error(ctx, error):
if isinstance(error, commands.MissingPermissions):
await ctx.send("You cant do that!")
Грубо говоря, необходимо сделать "видеостену" в Джанго, на которой бы выводились потоки со всех камер.
<div>
<img src="{% url 'stream_1' %}" alt="Stream 1" width="1024" height="768"/>
<img src="{% url 'stream_2' %}" alt="Stream 2" width="1024" height="768"/>
</div>
path('video/stream_1/', views.video_stream, {'camera_id': 0}, name='stream_1'),
path('video/stream_2/', views.video_stream, {'camera_id': 1}, name='stream_2'),
i
? Попробуйте так:for (let i = 0, len = match.length; i < len; i += 4) {
parts.push(match.substring(i, i + 4));
}
addEventListener.oninput = function()
. Попробуйте так:inputus[i].addEventListener('input', () => {
this.value = cc_format(this.value);
});
for (let i = 0; i < inputus.length; i++) {
inputus[i].addEventListener('input', function() {
this.value = cc_format(this.value);
});
Почему переменная all_participants принимает только 10000 значений, а не больше при парсинге?