Loading...
Loading...
Compare original and translation side by side
https://www.iros.go.krchallengekimchallengekim/iros-registry-automationhttps://www.iros.go.krchallengekimchallengekim/iros-registry-automationiros-registry-automation/scripts/upstream.pingit clone https://github.com/challengekim/iros-registry-automation.git
cd iros-registry-automation
git checkout 7c6924b2ff88d693a12556659188cb91041e5097
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
playwright install chromium
cp config.json.example config.jsonscripts/upstream.pingit checkoutiros-registry-automation/scripts/upstream.pingit clone https://github.com/challengekim/iros-registry-automation.git
cd iros-registry-automation
git checkout 7c6924b2ff88d693a12556659188cb91041e5097
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
playwright install chromium
cp config.json.example config.jsonscripts/upstream.pingit checkoutworkdir="$(mktemp -d "${TMPDIR:-/tmp}/iros-registry.XXXXXX")"
chmod 700 "$workdir"
mkdir -p "$workdir/downloads" "$workdir/logs" "$workdir/output" "$workdir/tmp-downloads"data/$workdir/corp-input.jsondata/iros_download.pycompanies_list$workdir/companies-input.jsoncat > "$workdir/corp-input.json" <<'JSON'
{
"1101111234567": "예시 주식회사",
"1101117654321": "샘플 주식회사"
}
JSON
python3 - "$workdir" <<'PY'
import json
import pathlib
import sys
workdir = pathlib.Path(sys.argv[1])
corp_input = json.loads((workdir / "corp-input.json").read_text())
companies = list(corp_input.values())
(workdir / "companies-input.json").write_text(
json.dumps(companies, ensure_ascii=False, indent=2) + "\n"
)
PYdata/iros_realties.json$workdir/realty-input.jsondata/$workdir/customer-list.xlsxdata/고객리스트.xlsxconfig.json$workdirpython3 - "$workdir" <<'PY'
import json
import pathlib
import sys
workdir = pathlib.Path(sys.argv[1])
config = json.loads(pathlib.Path("config.json").read_text())
config.update({
"corpnum_list": str(workdir / "corp-input.json"),
"companies_list": str(workdir / "companies-input.json"),
"realty_list": str(workdir / "realty-input.json"),
"excel_path": str(workdir / "customer-list.xlsx"),
"save_dir": str(workdir / "downloads"),
"realty_save_dir": str(workdir / "downloads" / "realty"),
"pdf_dir": str(workdir / "downloads"),
"report_output": str(workdir / "output" / "corp-report.xlsx"),
"extract_output": str(workdir / "output" / "corp-extract.json"),
"bizno_cache": str(workdir / "logs" / "bizno-cache.json"),
"bizno_results": str(workdir / "logs" / "bizno-results.json"),
"realty_cart_log": str(workdir / "logs" / "cart-realty-log.json"),
"realty_download_log": str(workdir / "logs" / "download-realty-log.json"),
"cart_log": str(workdir / "logs" / "cart-log.json"),
"cart_corpnum_log": str(workdir / "logs" / "cart-corpnum-log.json"),
"download_log": str(workdir / "logs" / "download-log.json"),
"download_temp": str(workdir / "tmp-downloads"),
})
pathlib.Path("config.json").write_text(json.dumps(config, ensure_ascii=False, indent=2) + "\n")
PYworkdir="$(mktemp -d "${TMPDIR:-/tmp}/iros-registry.XXXXXX")"
chmod 700 "$workdir"
mkdir -p "$workdir/downloads" "$workdir/logs" "$workdir/output" "$workdir/tmp-downloads"$workdir/corp-input.jsondata/data/iros_download.pycompanies_list$workdir/companies-input.jsoncat > "$workdir/corp-input.json" <<'JSON'
{
"1101111234567": "示例股份有限公司",
"1101117654321": "样本股份有限公司"
}
JSON
python3 - "$workdir" <<'PY'
import json
import pathlib
import sys
workdir = pathlib.Path(sys.argv[1])
corp_input = json.loads((workdir / "corp-input.json").read_text())
companies = list(corp_input.values())
(workdir / "companies-input.json").write_text(
json.dumps(companies, ensure_ascii=False, indent=2) + "\n"
)
PYdata/iros_realties.json$workdir/realty-input.json$workdir/customer-list.xlsxdata/data/고객리스트.xlsxconfig.json$workdirpython3 - "$workdir" <<'PY'
import json
import pathlib
import sys
workdir = pathlib.Path(sys.argv[1])
config = json.loads(pathlib.Path("config.json").read_text())
config.update({
"corpnum_list": str(workdir / "corp-input.json"),
"companies_list": str(workdir / "companies-input.json"),
"realty_list": str(workdir / "realty-input.json"),
"excel_path": str(workdir / "customer-list.xlsx"),
"save_dir": str(workdir / "downloads"),
"realty_save_dir": str(workdir / "downloads" / "realty"),
"pdf_dir": str(workdir / "downloads"),
"report_output": str(workdir / "output" / "corp-report.xlsx"),
"extract_output": str(workdir / "output" / "corp-extract.json"),
"bizno_cache": str(workdir / "logs" / "bizno-cache.json"),
"bizno_results": str(workdir / "logs" / "bizno-results.json"),
"realty_cart_log": str(workdir / "logs" / "cart-realty-log.json"),
"realty_download_log": str(workdir / "logs" / "download-realty-log.json"),
"cart_log": str(workdir / "logs" / "cart-log.json"),
"cart_corpnum_log": str(workdir / "logs" / "cart-corpnum-log.json"),
"download_log": str(workdir / "logs" / "download-log.json"),
"download_temp": str(workdir / "tmp-downloads"),
})
pathlib.Path("config.json").write_text(json.dumps(config, ensure_ascii=False, indent=2) + "\n")
PYiros_cart_by_corpnum.pyiros_cart.pypython iros_cart_by_corpnum.pyiros_cart_by_corpnum.pyiros_cart.pypython iros_cart_by_corpnum.py
완료되면 브라우저의 결제대상목록으로 이동한다. 사용자는 브라우저에서 페이지당 10건 단위로 직접 카드 결제를 완료하고, 터미널에는 결제가 끝난 뒤 Enter를 입력한다.
完成后跳转到浏览器中的支付对象列表页面。用户在浏览器中按每页10件的单位手动完成银行卡支付,支付完成后在终端中按Enter键。iros_download.pypython iros_download.pyconfig.jsonsave_dir$workdir/downloadscompanies_list$workdir/companies-input.jsoniros_download.pyFileNotFoundErroriros_download.pypython iros_download.pyconfig.jsonsave_dir$workdir/downloadscompanies_list$workdir/companies-input.jsoniros_download.pyFileNotFoundErrorpython iros_cart_realty.pyiros_download_realty.pypython iros_cart_realty.pyiros_download_realty.pyiros_wizard.pypython iros_wizard.pyexcel_path$workdir/customer-list.xlsxexcel_pathpdf_diriros_wizard.pypython iros_wizard.pyexcel_path$workdir/customer-list.xlsxexcel_pathpdf_dirchallengekim/iros-registry-automationchallengekim/iros-registry-automationpip install -r requirements.txtplaywright install chromiumpython iros_wizard.pypip install -r requirements.txtplaywright install chromiumpython iros_wizard.pychallengekimchallengekim