万年素人からHackerへの道

万年素人がHackerになれるまで殴り書きするぜ。

  • ・資産運用おすすめ
    10万円は1000円くらい利益
    資産運用ブログ アセマネ
    • ・寄付お願いします
      YENTEN:YYzNPzdsZWqr5THWAdMrKDj7GT8ietDc2W
      BitZenny:ZfpUbVya8MWQkjjGJMjA7P9pPkqaLnwPWH
      c0ban:8KG95GXdEquNpPW8xJAJf7nn5kbimQ5wj1
      Skycoin:KMqcn7x8REwwzMHPi9fV9fbNwdofYAWKRo

    Seleniumで絵文字の入力に失敗

    Seleniuminput_elementには入れたい要素 input_element.send_keys(value) この方法だとvalueに絵文字があると失敗した

    Chromedriver only supports characters in the BMP

    このエラーが邪魔!

    teratailにこんなやり方がある でも任意の文字を入れるのはなんか嫌だ。あとでバックスペースもいけるかも? Seleniumでtextareaに絵文字入りのテキストをReturnキーで送信できません。

    こっちのやり方。 https://stackoverflow.com/questions/59138825/chromedriver-only-supports-characters-in-the-bmp-error-while-sending-emoji-with answered Aug 18, 2022 at 13:06 の Zahouani Mouradさんの方法。

    js_code = """
      var elm = arguments[0], txt = arguments[1];
      elm.value += txt;
      elm.dispatchEvent(new Event('change'));
    """

    でJSのヒアドキュメントを用意して

    driver.execute_script(js_code, input_element, value)

    input_elementには入れたい要素 valueは実際入れたい値。

    これで行けた。