a

Python3 よく使うの

import win32gui

# 特定のウィンドウをアクティブにする
window = win32gui.FindWindow(None, '(無題)1 - sakura 2.4.1.2849')
if window != 0:
    win32gui.SetForegroundWindow(window)
import pyautogui

# クリック
pyautogui.click(x=100, y=200, button='right', clicks=2, interval=0.25)

# スクロール
pyautogui.scroll(-10)

# キー押下3種
pyautogui.press('enter', presses=3, interval=0.5)
with pyautogui.hold('shift'):
    pyautogui.press(['left', 'left', 'left'])
pyautogui.hotkey('ctrl', 'shift', 'esc')
import pyperclip

# クリップボード
pyperclip.copy('aaaaaaaaaa')
s = pyperclip.paste()
from sqlite_utils import Database

if __name__ == '__main__':

    dbname = 'data.db'
    db = Database(dbname)

    if db["data"].exists():
        db["data"].drop()
    
    db["data"].create({
        "id": int,
        "name": str,
        "kousu": float,
        "date": str,
    }, pk="id")
    
    db["data"].insert({
        "id": 1,
        "name": "aaaaa",
        "kousu": 1.5,
        "date": "2024-06-03",
    })

    for i in db["data"].rows_where("kousu > ?", [0]):
        print(type(i["id"]), i["id"])
        print(type(i["name"]), i["name"])
        print(type(i["kousu"]), i["kousu"])
        print(type(i["date"]), i["date"])
import flet as ft

def main(page: ft.Page):
    
    def show_close_table():
        return ft.DataTable(
            columns=[
                    ft.DataColumn(ft.Text("a")),
            ],
            rows=[
                ft.DataRow([
                    ft.DataCell(ft.Text("a1")),
                ]),
            ],
        )

    def show_search():
        return ft.Column([
            ft.Row([
                ft.TextField(value="", label="", width=200),
                ft.TextField(value="", label="", width=200),
                ft.TextField(value="", label="", width=200),
            ]),
            ft.Row([
                ft.TextField(value="", label="", width=200),
                ft.TextField(value="", label="", width=200),
            ]),
            # ft.Divider(height=10),
            ft.DataTable(
                columns=[
                    ft.DataColumn(ft.Text("b")),
                ],
                rows=[
                    ft.DataRow([
                        ft.DataCell(ft.Text("b1")),
                    ]),
                    ft.DataRow([
                        ft.DataCell(ft.Text("b2")),
                    ]),
                ])
        ])

    def edit_order():
        pass

    def show_convert():
        
        def show_filepicker(e):
            pick_files_dialog.visible = True
            page.overlay.append(pick_files_dialog)
            page.update()
            print(1)

        def file_pick_result(e):
            print(2)

        pick_files_dialog = ft.FilePicker(on_result=file_pick_result, visible=False)

        return ft.Column([
            ft.Row([
                ft.TextField(value="", label="Excelファイルパス"),
                ft.FilledButton(text="選択", on_click=show_filepicker),
                pick_files_dialog,
            ]),
            ft.TextField(value="", label="発注先"),
            ft.FilledButton(text="コンバート"),
        ])

    def change_body(body, i: int):
        if i == 0:
            body.content = show_close_table()
        elif i == 1:
            body.content = show_search()
        elif i == 2:
            body.content = edit_order()
        elif i == 3:
            body.content = show_convert()
        page.update()

    page_rail = ft.NavigationRail(
        label_type=ft.NavigationRailLabelType.ALL,
        min_width=100,
        min_extended_width=400,
        # leading=ft.Column([ft.FloatingActionButton(icon=ft.icons.ADD, text="新規登録"),]),
        group_alignment=-1,
        destinations=[
            ft.NavigationRailDestination(
                icon=ft.icons.CALENDAR_MONTH,
                selected_icon=ft.icons.CALENDAR_MONTH,
                label="締一覧"
            ),
            ft.NavigationRailDestination(
                icon=ft.icons.SEARCH,
                selected_icon=ft.icons.SEARCH,
                label="検索",
            ),
            ft.NavigationRailDestination(
                icon=ft.icons.ADD,
                selected_icon=ft.icons.ADD,
                label="新規登録",
            ),
            ft.NavigationRailDestination(
                icon=ft.icons.TABLE_VIEW,
                # selected_icon_content=ft.Icon(ft.icons.SETTINGS),
                label_content=ft.Text("コンバート"),
            ),
        ],
        on_change=lambda e:change_body(e.control.parent.controls[2], e.control.selected_index),
    )

    page.appbar = ft.AppBar(ft.Text("title"))
    page.add(ft.Row([
        page_rail,
        ft.VerticalDivider(width=1),
        ft.Container(content=show_close_table(), alignment=ft.alignment.top_left),
    ],expand=True,))


if __name__ == '__main__':
    ft.app(target=main)

ブクマするやつ

2024年(令和6年)カレンダー(祝日・六曜・月齢)|便利コム

東京都中央区の天気予報(1時間・今日明日・週間) - ウェザーニュース

東京アメッシュ

関東の運行情報(JR、私鉄、地下鉄、新幹線) - Yahoo!路線情報

Yahoo!リアルタイム検索

Google マップ

乗換案内 - NAVITIME

WinPython

WinPython本体

https://winpython.github.io/

pip

「WinPython Command Prompt.exe」で叩く。

install 使い方・参考
pyautogui pip install pyautogui Welcome to PyAutoGUI’s documentation! — PyAutoGUI documentation
win32gui pip install pywin32 【Python】ウィンドウをアプリ名指定しアクティブ切り替えする簡単な方法
pyperclip pip install pyperclip Python, pyperclipでクリップボードを操作(コピー、ペースト、監視) | note.nkmk.me
requests pip install requests Python, Requestsの使い方 | note.nkmk.me
bs4 pip install beautifulsoup4 【Python】猫でも出来るWebスクレイピングの基礎【BeautifulSoup4】 #Python - Qiita
pypdf pip install pypdf Python, pypdfでPDFを結合・分割(ファイル全体・個別ページ) | note.nkmk.me
pandas pip install pandas pandasに関する情報 | note.nkmk.me
selenium pip install selenium Selenium Pythonのインストール
tqdm pip install tqdm tqdmでプログレスバーを表示させる #Python - Qiita
PySimpleGUI pip install PySimpleGUI PySimpleGUI/readme.ja.md at master · PySimpleGUI/PySimpleGUI · GitHub
pyinstaller pip install pyinstaller PyInstaller Manual — PyInstaller 6.3.0 documentation