61

Re: Кодофлуд, або флудокод

Зацініть оформлення коду

rem='';/* <script>     /*
@node "%~f0" %* & goto :eof
  :mode=html:         */                 from210={/*
 
 Система запису з основою 210. Кожний 210-ковий розряд
 складається з десятків (позначаються латинськими буквами,
 крім I, L, O, V, Y, які не використовуються)
 та одиниць (позначаються арабськими цифрами, крім 0),
 у кожному розряді десятки йдуть перед одиницями.
 
       Одиницi:              Десятки:
        (0 не пишеться)                    */
        1: 1,               A: 10, M:110,
        2: 2,               B: 20, N:120,
        3: 3,               C: 30, P:130,
        4: 4,               D: 40, Q:140,
        5: 5,               E: 50, R:150,
        6: 6,               F: 60, S:160,
        7: 7,               G: 70, T:170,
        8: 8,               H: 80, U:180,
        9: 9,               J: 90, W:190,
                            K:100, X:200,
                                 Z:0            /*
 Z не пишеться:
    - між двома арабськими цифрами
    - на початку числа перед арабською цифрою
       (лише число нуль починається з Z)        */};

to210={};
for(i in from210)
    to210[from210[i]]=i;
    
function intTo210(n)
    {
    if(n==0)return 'Z';
    var res='',
        b, d, u;
    while(n>0)
        {
        b=n%210; n=(n-b)/210;
        u=b%10;  d=b-u;
        res=to210[d]+(u||'')+res;
        }
    return res.replace(/([1-9])Z([1-9])/g, '$1$2').
                replace(/([1-9])Z([1-9])/g, '$1$2').
                replace(/^Z/,'');
    }
function base210ToInt(s)
    {
    s='Z'+s.replace(/([1-9])([1-9])/g, '$1Z$2').
            replace(/([1-9])([1-9])/g, '$1Z$2').
            toUpperCase();
    var res=0, i;
    for(i in s)
        {
        if (s[i]>='A' && s[i]<='Z') res*=210;
        res+=from210[s[i]];
        }
    return res;
    }
// </script> :) <!--    
var convertfn=function(n)
    {return intTo210(n)+'[sub]210[/sub]';};
process.argv.forEach(function (val, index, array)
    {
    if(index>1)
        if(val=='-i' || val=='--invert')
            convertfn=base210ToInt;
        else if(val=='-d' || val=='--direct')
            convertfn=intTo210;
        else console.log(convertfn(val));
    }); /* -->
<script>document.body.innerHTML='';</script>
<form>
<input id=base10><sub>10</sub> = <input id=base210><sub>210</sub>
</form>
<script>
//document.write('12345');
base10 =document.getElementById('base10');
base210=document.getElementById('base210');
base10.onchange=function()
    {
    base210.value=intTo210(+base10.value);
    }
base210.onchange=function()
    {
    base10.value=base210ToInt(base210.value);
    }
</script>
    
    <!-- */ // -->
Подякували: 221VOLT1

62

Re: Кодофлуд, або флудокод

def int2str(n, base=10):
    if n<0:
        return '-'+int2str(-n, base)
    a=[n]
    while a[0]>=base:
        a[:1]=divmod(a[0],base)
    if base<=36:
        return ''.join((chr(i+(ord('0') if i<10 else ord('A')-10)) for i in a))
    else:
        return ':'.join((str(int(i)) for i in a))

from functools import reduce
def str2int(s, base=10):
    if s[0]=='-':
        return -str2int(s[1:], base)
    if base<=36:
        return int(s, base)
    else:
        return reduce(lambda x,y: base*x+y, map(int, s.split(':')))

Для чого це взагалі треба: python'івський конструктор int з двома параметрами дозволяє конвертувати рядок у число, використовуючи системи числення з довільною основою від 2 до 36 (використовуючи літери для додаткових цифр) — проте, зворотнє перетворення доводиться робити руками (що й робить перша функція). Також ці дві функції дозволяють перетворювати рядок<->число, використовуючи основу 37 і більше — в цьому випадку, розряди записуються десятковими числами, розділеними двокрапками.

63

Re: Кодофлуд, або флудокод

(lambda l,r=lambda a:range(3,a,2):[*filter(lambda i:all(map(i.__mod__,r(-~int(i**.5)))),r(l))])(100)
#[3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]
Подякували: P.Y., 221VOLT2

64

Re: Кодофлуд, або флудокод

Зацініть еталонний код на пітончику

#!usr/bin/env python3
# -*- coding: utf-8 -*-

import dash
import dash_core_components as dcc
import dash_html_components as html

class VisualForDash():

    external_stylesheets = ['plotlydash.css']
    app = dash.Dash(__name__, external_stylesheets=external_stylesheets)

    colors = {
                'background': '#111111',
                'text': '#7FDBFF'
             }

    app.layout = html.Div(
                            [
                                html.Div(
                                            style={'backgroundColor': colors['background']},
                                            children=html.H1(
                                                                id='header',
                                                                children='OLX PARSER',
                                                                style={
                                                                        'textAlign': 'center',
                                                                        'color': colors['text']
                                                                      }
                                                                )
                                        ),

                                html.Div(
                                            html.Label(id='section', children='Розділ', ),
                                        ),
                                dcc.Dropdown(
                                                            options=[
                                                            {'label': 'Всі розділи', 'value': 'list/'},
                                                            {'label': 'Дитячий світ', 'value': 'detskiy-mir/'},
                                                            {'label': 'Нерухомість', 'value':'nedvizhimost/'},
                                                            {'label': 'Транспорт', 'value': 'transport/'},
                                                            {'label': 'Запчастини для транспорту', 'value': 'zapchasti-dlya-transporta/'},
                                                            {'label': 'Робота', 'value': 'rabota/'},
                                                            {'label': 'Тварини', 'value': 'zhivotnye/'},
                                                            {'label': 'Дім і сад', 'value': 'dom-i-sad/'},
                                                            {'label': 'Електроніка', 'value': 'elektronika/'},
                                                            {'label': 'Бізнес та послуги', 'value': 'uslugi/'},
                                                            {'label': 'Мода і стиль', 'value': 'moda-i-stil/'},
                                                            {'label': 'Хобі і відпочинок', 'value': 'hobbi-otdyh-i-sport/'},
                                                            {'label': 'Віддам безкоштовно', 'value': 'otdam-darom/'},
                                                            {'label': 'Обмін', 'value': 'obmen-barter/'}
                                                            ],
                                                            value='list/', id='section_dropbox'
                                                        ),

                                html.Div(
                                            html.Label(id='sub_section', children='Підрозділ', ),
                                        )
                                dcc.Dropdown(
                                                options=[
                                                            {'label':'Все в розділі', 'value':''}

                                                        ],
                                                value='', id='sub_section_dropbox'
                                            ),
                                html.Label(children='Введіть місцевість в форматі назва населеного пункту, область ,район ',id='label-adress'),
                                dcc.Input(value='',id='input-adress', type='text', ),
                                html.Label(id='radius', children='+км', ),
                                dcc.Dropdown(
                                                options=[
                                                            {'label': '+0', 'value': '0'},
                                                            {'label': '+2', 'value': '2'},
                                                            {'label': '+5', 'value':'5'},
                                                            {'label': '+10', 'value': '10'},
                                                            {'label': '+15', 'value': '15'},
                                                            {'label': '+30', 'value': '30'},
                                                            {'label': '+50', 'value': '50'},
                                                            {'label': '+75', 'value': '75'},
                                                            {'label': '+100', 'value': '100'},
                                                        ],
                                                value='0', id='radius_dropbox'
                                            ),
                                               html.Label(children='Виберіть валюту відображення', id='label-change valute'),
                                dcc.Dropdown(
                                                options = [{'label':'UAH','value':'UAH'},
                                                           {'label':'USD','value':'USD'},
                                                           {'label':'EUR','value':'EUR'}],
                                                value = 'UAH', id = 'change-valute-dropbox'
                                            ),

                                html.Label(children='Введіть мінімальну ціну',id='label-min-cost'),
                                dcc.Input(value='',id='input-min-cost', type='text', ),

                                html.Label(children='Введіть максимальну ціну',id='label-max-cost'),
                                dcc.Input(value='',id='input-max-cost', type='text', ),


                                html.Div(
                                            html.Label(style={'display':'none'},id='advanced_search_label', children='Розширений пошук'),

                                        ),

                            html.Div(html.Label(style={'display':'none'}, id=            'new-secondhand', children= 'Стан'),
                                    ),





                                html.Label(children='Введіть характеристику для пошуку:  ',id='label-input'),
                                dcc.Input(value='',id='input-box', type='text', ),
                                html.Button(children ='Пошук', id='button'),

                            ]
                        )
Подякували: /KIT\1

65

Re: Кодофлуд, або флудокод

У продовження дискусії.

<meta charset=utf-8 />
<h3>Чи враховується синтаксис скриптової мови (JS) HTML-парсером?</h3>
<script>
document.write(/*
</script>
Ні — тому ви бачите цей текст
<script>
*/ "Так — тому ви бачите цей програмний вивід");
</script>

Мій ФФ каже, що ні :(

Подякували: NaharD, leofun01, 221VOLT3

66

Re: Кодофлуд, або флудокод

P.Y. написав:

У продовження дискусії.

<meta charset=utf-8 />
<h3>Чи враховується синтаксис скриптової мови (JS) HTML-парсером?</h3>
<script>
document.write(/*
</script>
Ні — тому ви бачите цей текст
<script>
*/ "Так — тому ви бачите цей програмний вивід");
</script>

Мій ФФ каже, що ні :(

Хром 80 також каже ні

Подякували: P.Y., 221VOLT2

67 Востаннє редагувалося pluszz (01.03.2020 07:29:15)

Re: Кодофлуд, або флудокод

Получає всі повідомлення за сьогоднішній день з "replace.org.ua".

# -*- coding: utf-8 -*-
from bs4 import BeautifulSoup
from requests import request
from _selectors import Selectors as sel #css селектори
class ReplaceParser():

    def __init__(self, page):
        self. page = page
        self.active_t = request('GET',page ).text
        self.soup = BeautifulSoup(self.active_t, 'lxml')

    def number_all_links(self):
        return(len(self.soup.find_all('li', class_='info-lastpost')))

    def active_temes(self):#Повертає масив з даними останніх редагованих тем
        topic_mas = []
        for number in range(self.number_all_links()):
            line_mas = []
            time = str(self.soup.select(sel.find_today_elelments(number)))[-13:-5]
            url = str(self.soup.select(sel.find_today_elelments(number)))[10:-24]
            title = self.return_title(number)
            autor = str(self.soup.select(sel.find_last_autor_name(number)))[11:-8]
            if str(self.soup.select(sel.find_today_elelments(number)))[-22:-14] == "Сьогодні":
                line_mas.append(title)
                line_mas.append(time)
                line_mas.append(autor)
                line_mas.append(url)
                print(line_mas)
                topic_mas.append(line_mas)
        return(topic_mas)


    def return_title(self, number):
        title_line= str(self.soup.select(sel.find_active_temes_url(number)))[:-5]
        title=''
        for liter in title_line[::-1]:
            if liter == ">":
                return (title[::-1])
                break
            title += liter
        return(title[::-1])

if __name__ == "__main__":
    rp = ReplaceParser("https://replace.org.ua/search/recent/")
    print(rp.active_temes())
Подякували: /KIT\, P.Y., 221VOLT3

68

Re: Кодофлуд, або флудокод

>>> for i in range(1,30):
...     file_name = os.listdir(f"images/{str(i)}/1")[0]
...     os.rename(f"images/{str(i)}/1/{file_name}",f"images/{str(i)}/1/001.jpg")

Як швидко перейменувати файли в різних папках якщо в тебе назвами папок служать цифри без пошуку додаткових інструментів

69

Re: Кодофлуд, або флудокод

Календар на поточний місяць (користі -> 0, але ... )
SQL

MySQL 8.x
WITH RECURSIVE cte (d, w, dw, dm) AS (
    SELECT
        d,
        WEEK(d, 1),
        DAYOFWEEK(d),
        DAY(d) 
    FROM
        (SELECT DATE_ADD(CURDATE(), INTERVAL 1 - DAY(CURDATE()) DAY) AS d) AS temp 
        UNION ALL
    SELECT
        DATE_ADD(d, INTERVAL 1 DAY),
        WEEK(DATE_ADD(d, INTERVAL 1 DAY), 1),
        DAYOFWEEK(DATE_ADD(d, INTERVAL 1 DAY)),
        DAY(DATE_ADD(d, INTERVAL 1 DAY)) 
    FROM
        cte 
    WHERE
        d < LAST_DAY(CURDATE()) 
) 
SELECT
    SUM(CASE dw WHEN 2 THEN dm END) AS `ПН`,
    SUM(CASE dw WHEN 3 THEN dm END) AS `ВТ`,
    SUM(CASE dw WHEN 4 THEN dm END) AS `СР`,
    SUM(CASE dw WHEN 5 THEN dm END) AS `ЧТ`,
    SUM(CASE dw WHEN 6 THEN dm END) AS `ПТ`,
    SUM(CASE dw WHEN 7 THEN dm END) AS `СБ`,
    SUM(CASE dw WHEN 1 THEN dm END) AS `НД` 
FROM
    cte 
GROUP BY
    w;

https://replace.org.ua/uploads/images/3603/2492c34adeee568319bedd679fc7d302.png

Подякували: leofun011