tag:crieit.net,2005:https://crieit.net/magazines/aocory/%E3%83%AF%E3%82%A4%E3%81%A8%E5%AD%A6%E3%81%B6Python/feed ワイと学ぶPythonの投稿 - Crieit Crieitで連載「ワイと学ぶPython」の最近の投稿 2019-05-25T09:02:06+09:00 https://crieit.net/magazines/aocory/%E3%83%AF%E3%82%A4%E3%81%A8%E5%AD%A6%E3%81%B6Python/feed tag:crieit.net,2005:PublicArticle/15022 2019-05-25T09:02:06+09:00 2019-05-25T09:02:06+09:00 https://crieit.net/posts/Python-FizzBuzz PythonでFizzBuzzを作る <blockquote> <p>👧 ぱっぱ、FizzBuzz作って</p> <p>👨🏻 よっしゃ分かった。</p> <p>👨🏻 Pythonにさせたろ!</p> </blockquote> <h2 id="アプリの要件"><a href="#%E3%82%A2%E3%83%97%E3%83%AA%E3%81%AE%E8%A6%81%E4%BB%B6">アプリの要件</a></h2> <blockquote> <p>👨🏻 まとめるとこんな要件やな</p> </blockquote> <p>1~100までの数字で、</p> <ul> <li>3で割り切れれば、「Fizz!」を表示する</li> <li>5で割り切れれば、「Buzz!」を表示する</li> <li>3と5で割り切れれば、「Fizz Buzz!」を表示する</li> <li>上記以外の場合は、そのままの数字を表示する</li> </ul> <blockquote> <p>👨🏻 まとめるとこんな要件やな</p> <p>👧 <code>if</code>と<code>for</code>か<code>while</code>使えば実装できそうね。。。</p> <p>👨🏻 せやな。(なんで2つも実装思いついとるねん)</p> </blockquote> <h2 id="forを用いたFizzBuzzの実装例"><a href="#for%E3%82%92%E7%94%A8%E3%81%84%E3%81%9FFizzBuzz%E3%81%AE%E5%AE%9F%E8%A3%85%E4%BE%8B">forを用いたFizzBuzzの実装例</a></h2> <blockquote> <p>👨🏻 <code>for</code>は、<code>range()</code>を<code>in</code>のうしろにつけると指定回数出来るな</p> <p>👧100ではなく101にするところがポイントよ</p> <p>👨🏻せやな。娘が一人でPythonコード書いたほうが早いんちゃうか?</p> <p>👨🏻 <code>if</code>、<code>elif</code>、<code>else</code>で条件分岐やな。</p> <p>👧<code>%</code>は割り算の余りをあらわしているわ。</p> <p>👨🏻 <code>for</code>で書くとこんな感じになるで</p> </blockquote> <pre><code class="python">for i in range(1, 101): if i % 15 == 0: print("Fizz Buzz!") elif i % 3 == 0: print("Fizz!") elif i % 5 == 0: print("Buzz!") else: print(i) </code></pre> <blockquote> <p>👨🏻 ちゃんとFizzBuzzうごいとるな</p> </blockquote> <h2 id="whileを用いたFizzBuzzの実装例"><a href="#while%E3%82%92%E7%94%A8%E3%81%84%E3%81%9FFizzBuzz%E3%81%AE%E5%AE%9F%E8%A3%85%E4%BE%8B">whileを用いたFizzBuzzの実装例</a></h2> <blockquote> <p>👨🏻 次はWhileを用いた実装や</p> <p>👧大体一緒だけど<code>i=1</code>を設定して最後に<code>i+=1</code>で1追加することで実装しているわ。</p> <p>👨🏻 わしの出番なしや</p> </blockquote> <pre><code class="python">i = 1 while i < 101: if i % 15 == 0: print("Fizz Buzz!") elif i % 3 == 0: print("Fizz!") elif i % 5 == 0: print("Buzz!") else: print(i) i += 1 </code></pre> <blockquote> <p>👨🏻PythonでFizzBuzzを作ったで!やったで娘ちゃん。</p> <p>👧ぱぱ次は3の倍数の時アホになるやつ作って。</p> <p>👨🏻おっしゃ、また要件考えるわ。</p> </blockquote> <h3 id="このサンプルの動く動画はこちら"><a href="#%E3%81%93%E3%81%AE%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AB%E3%81%AE%E5%8B%95%E3%81%8F%E5%8B%95%E7%94%BB%E3%81%AF%E3%81%93%E3%81%A1%E3%82%89">このサンプルの動く動画はこちら</a></h3> <p><a target="_blank" rel="nofollow noopener" href="https://www.coderecipe.org/example/example04.html">動画はこちら</a></p> aocory tag:crieit.net,2005:PublicArticle/15021 2019-05-25T07:35:27+09:00 2019-05-25T07:35:27+09:00 https://crieit.net/posts/Python-5ce871afe10d3 パパ活 Pythonで単語テストを作る <blockquote> <p>👧 ぱっぱ、私英単語の練習したい。</p> <p>👨🏻 よっしゃ分かった。中1レベルで作ったるで。</p> <p>👨🏻 けど、やっぱり問題作るの面倒くさいな。せや!Pythonにさせたろ!</p> </blockquote> <h1 id="Pythonで単語テストを作る"><a href="#Python%E3%81%A7%E5%8D%98%E8%AA%9E%E3%83%86%E3%82%B9%E3%83%88%E3%82%92%E4%BD%9C%E3%82%8B">Pythonで単語テストを作る</a></h1> <h2 id="アプリの要件"><a href="#%E3%82%A2%E3%83%97%E3%83%AA%E3%81%AE%E8%A6%81%E4%BB%B6">アプリの要件</a></h2> <blockquote> <p>👨🏻 要件としてはこんな感じになるな。</p> </blockquote> <ul> <li>英単語一覧を辞書型として格納</li> <li>問題をランダムに表示</li> <li>ユーザーに文字列を入力させる</li> <li>判定</li> </ul> <blockquote> <p>👨🏻 こんな感じの要件やろか?</p> <p>👧 正解問題数を足す仕様も追加してパパ</p> <p>👨🏻 鬼や。。ママに内緒で飴こうたるから勘弁して</p> <p>👧 私をやすい女だと思わないでパパ</p> <p>👨🏻 ひぃぃぃ</p> </blockquote> <h1 id="英単語一覧を辞書型として格納"><a href="#%E8%8B%B1%E5%8D%98%E8%AA%9E%E4%B8%80%E8%A6%A7%E3%82%92%E8%BE%9E%E6%9B%B8%E5%9E%8B%E3%81%A8%E3%81%97%E3%81%A6%E6%A0%BC%E7%B4%8D">英単語一覧を辞書型として格納</a></h1> <blockquote> <p>👨🏻 とりあえずここからICOCA</p> <p>👧 パパ、活字かつ関西人じゃないと分からないボケは良くないよ。</p> <p>👨🏻 。。。</p> </blockquote> <h2 id="Pythonの辞書型の機能確認"><a href="#Python%E3%81%AE%E8%BE%9E%E6%9B%B8%E5%9E%8B%E3%81%AE%E6%A9%9F%E8%83%BD%E7%A2%BA%E8%AA%8D">Pythonの辞書型の機能確認</a></h2> <blockquote> <p>👨🏻 まずは辞書型の確認や。辞書型データはこんな感じでアクセスできるねんな。。</p> </blockquote> <pre><code class="python">dic = {"A" : 1, "B" : 2} print(dic["B"]) </code></pre> <blockquote> <p>👨🏻 単語テストやし日本語と英単語でセット作れば良さそうやな。</p> <p>👧 ちなみに下のようにvalueから引っ張ってくることはできないわ。</p> </blockquote> <pre><code class="python">dic = {"A" : "えー", "B" : "ビー"} print(dic["えー"]) </code></pre> <blockquote> <p>👧 この場合はリスト内包表記、および、for文で辞書のキーと値を取得する<code>items()</code>メソッドを使うといいよ。</p> </blockquote> <pre><code class="python">dic = {"A" : "えー", "B" : "ビー"} keys = [k for k, v in dic.items() if v == 'えー'] print(keys) </code></pre> <blockquote> <p>👨🏻 なんでこんなん知ってるねん。</p> <p>👨🏻 今回は、日本語出して英語を入力させるアプリにするつもりやからkey</p> <p>👨🏻 辞書型に追加するには<code>update()</code>を使うんやったな。。</p> </blockquote> <pre><code class="python">d = {'りんご': 'apple', 'オレンジ': 'orange'} d.update({'えんぴつ':'pencil'}) print(d) #{'りんご': 'apple', 'オレンジ': 'orange', 'えんぴつ': 'pencil'} </code></pre> <h2 id="辞書型データからランダムに要素を抽出する"><a href="#%E8%BE%9E%E6%9B%B8%E5%9E%8B%E3%83%87%E3%83%BC%E3%82%BF%E3%81%8B%E3%82%89%E3%83%A9%E3%83%B3%E3%83%80%E3%83%A0%E3%81%AB%E8%A6%81%E7%B4%A0%E3%82%92%E6%8A%BD%E5%87%BA%E3%81%99%E3%82%8B">辞書型データからランダムに要素を抽出する</a></h2> <blockquote> <p>👨🏻 要素をランダムに1つ取り出すのは<code>random.choice</code>やったな。</p> </blockquote> <pre><code class="python">import random d = {'りんご': 'apple', 'オレンジ': 'orange'} d.update({'えんぴつ':'pencil'}) val = random.choice(d) </code></pre> <blockquote> <p>👨🏻 あれ?エラーや。。</p> <p>👧<code>random.choice(list(d.items()))</code>のように書かないとパパだめよ</p> <p>👨🏻 もうコード娘書いてくれ。</p> </blockquote> <pre><code class="python">import random d = {'りんご': 'apple', 'オレンジ': 'orange'} d.update({'えんぴつ':'pencil'}) jp, en = random.choice(list(d.items())) print(jp) print(en) </code></pre> <h2 id="ユーザーに単語を入力させる"><a href="#%E3%83%A6%E3%83%BC%E3%82%B6%E3%83%BC%E3%81%AB%E5%8D%98%E8%AA%9E%E3%82%92%E5%85%A5%E5%8A%9B%E3%81%95%E3%81%9B%E3%82%8B">ユーザーに単語を入力させる</a></h2> <blockquote> <p>👨🏻 <code>input()</code>で入力できるようにするで</p> </blockquote> <pre><code class="python">import random d = {'りんご': 'apple', 'オレンジ': 'orange'} d.update({'えんぴつ':'pencil'}) jp, en = random.choice(list(d.items())) print("以下の英語のスペルを答えなさい") print(jp) ans=input() </code></pre> <h2 id="正誤判定をifで実装"><a href="#%E6%AD%A3%E8%AA%A4%E5%88%A4%E5%AE%9A%E3%82%92if%E3%81%A7%E5%AE%9F%E8%A3%85">正誤判定をifで実装</a></h2> <blockquote> <p>👨🏻<code>if</code>でansとenが同じであることを条件にしたらええんやな?</p> <p>👧パパ <code>=</code>ではなくて一致は<code>==</code>を使うわ</p> </blockquote> <pre><code class="python">import random d = {'りんご': 'apple', 'オレンジ': 'orange'} d.update({'えんぴつ':'pencil'}) jp, en = random.choice(list(d.items())) print("以下の英語のスペルを答えなさい") print(jp) ans=input() if ans==en: print("正解") else: print("間違い") </code></pre> <blockquote> <p>👨🏻よしできたでpythonで英語の学習も捗るな</p> <p>👧パパ、ありがとう。だけど、辞書型データが全然足りないわ</p> <p>👨🏻おおぅ</p> </blockquote> aocory tag:crieit.net,2005:PublicArticle/15018 2019-05-24T09:09:31+09:00 2019-05-24T09:09:31+09:00 https://crieit.net/posts/Python-1-5ce7363be087c パパ活Python 1桁の引き算全パターンを生成 <blockquote> <p>👧 ぱっぱ、私引き算の練習したい。</p> <p>👨🏻 前回、足し算は全部できたし引き算は余裕やろ。</p> <p>👨🏻 けど、やっぱり問題作るの面倒くさいな。せや!Pythonにさせたろ!</p> </blockquote> <h1 id="今回作るコードの案件"><a href="#%E4%BB%8A%E5%9B%9E%E4%BD%9C%E3%82%8B%E3%82%B3%E3%83%BC%E3%83%89%E3%81%AE%E6%A1%88%E4%BB%B6">今回作るコードの案件</a></h1> <ul> <li>1から9までの全パターンの組み合わせを配列で生成</li> <li>小学生を対象としているので負の値をとるものは除去し再度配列に格納</li> <li>ランダムに配列から10個を取り出す</li> </ul> <blockquote> <p>👨🏻 こんな要件でどうやろ?</p> <p>👧 ええんちゃう?</p> <p>👨🏻 娘なんでわかるねん。</p> </blockquote> <h1 id="1から9までの全パターンの組み合わせを配列で生成"><a href="#1%E3%81%8B%E3%82%899%E3%81%BE%E3%81%A7%E3%81%AE%E5%85%A8%E3%83%91%E3%82%BF%E3%83%BC%E3%83%B3%E3%81%AE%E7%B5%84%E3%81%BF%E5%90%88%E3%82%8F%E3%81%9B%E3%82%92%E9%85%8D%E5%88%97%E3%81%A7%E7%94%9F%E6%88%90">1から9までの全パターンの組み合わせを配列で生成</a></h1> <blockquote> <p>👨🏻 問題はここやな。前回使ったitertoolsでいけそうや。</p> </blockquote> <pre><code class="python">import itertools num=[1,2,3,4,5,6,7,8,9] list(itertools.permutations(num, 2)) </code></pre> <blockquote> <p>👨🏻 なんか犬がしゃべった気がするけど気のせいやな。</p> <p>👧 permutationsは、順列という意味よ</p> <p>👨🏻 娘ワイより英語できるやん。</p> </blockquote> <h2 id="forでリストを取り出す"><a href="#for%E3%81%A7%E3%83%AA%E3%82%B9%E3%83%88%E3%82%92%E5%8F%96%E3%82%8A%E5%87%BA%E3%81%99">forでリストを取り出す</a></h2> <blockquote> <p>👨🏻 とりあえず、for文でリストを取り出して</p> <p>👧 []で要素にアクセス</p> <p>👨🏻 娘なんでそんなん知ってるねん。</p> </blockquote> <pre><code class="python">import itertools num=[1,2,3,4,5,6,7,8,9] numlist=list(itertools.permutations(num, 2)) for nums in numlist: print(str(nums[0])+"-"+str(nums[1])+"=") </code></pre> <blockquote> <p>👨🏻 けど、不十分やなこれやと。0以下のマイナスも含まれるな。</p> </blockquote> <h2 id="random.sample()でランダムに複数要素を取り出す。"><a href="#random.sample%28%29%E3%81%A7%E3%83%A9%E3%83%B3%E3%83%80%E3%83%A0%E3%81%AB%E8%A4%87%E6%95%B0%E8%A6%81%E7%B4%A0%E3%82%92%E5%8F%96%E3%82%8A%E5%87%BA%E3%81%99%E3%80%82">random.sample()でランダムに複数要素を取り出す。</a></h2> <blockquote> <p>👨🏻 あとはこれを配列に格納してランダムに取り出せるようにしよか。random.sample()でええかな?</p> <p>👧 ぱぱその前にifで0以上になるものを抽出しないとダメじゃない</p> <p>👨🏻 なんでワイより詳しいねん。</p> </blockquote> <pre><code class="python">import itertools import random num=[1,2,3,4,5,6,7,8,9] subtractionlist=[] numlist=list(itertools.permutations(num, 2)) for nums in numlist: if nums[0]-nums[1] > 0: subtractionlist.append(str(nums[0])+"-"+str(nums[1])) print(random.sample(subtractionlist,10)) </code></pre> <blockquote> <p>👨🏻おっしゃ、できたで!これで無限に小テストできるで!</p> <p>👧パパ。。でもね。引き算の授業。。昨日で終わっちゃった。。</p> <p>👨🏻えーーーーーーーー</p> </blockquote> <h2 id="動画で確認"><a href="#%E5%8B%95%E7%94%BB%E3%81%A7%E7%A2%BA%E8%AA%8D">動画で確認</a></h2> <p><a target="_blank" rel="nofollow noopener" href="https://www.coderecipe.org/example/example02.html">CodeRecipe</a></p> aocory tag:crieit.net,2005:PublicArticle/15012 2019-05-23T08:21:51+09:00 2019-05-23T08:21:51+09:00 https://crieit.net/posts/Python-1 パパ活Python 1桁の足し算全パターンを生成 <blockquote> <p>👧 ぱっぱ、私足し算の練習したい。</p> <p>👨🏻 小学校前やし1桁の足し算の練習させたろ。</p> <p>👨🏻 けど、問題作るの面倒くさいな。せや!Pythonにさせたろ!</p> </blockquote> <h1 id="今回作るコードの案件"><a href="#%E4%BB%8A%E5%9B%9E%E4%BD%9C%E3%82%8B%E3%82%B3%E3%83%BC%E3%83%89%E3%81%AE%E6%A1%88%E4%BB%B6">今回作るコードの案件</a></h1> <ul> <li>1から9までの全パターンの組み合わせを配列で生成</li> <li>ランダムに配列から10個を取り出す</li> </ul> <blockquote> <p>👨🏻 こんな要件でどうやろ?</p> <p>👧 ええんちゃう?</p> <p>👨🏻 娘なんでわかるねん。</p> </blockquote> <h1 id="1から9までの全パターンの組み合わせを配列で生成"><a href="#1%E3%81%8B%E3%82%899%E3%81%BE%E3%81%A7%E3%81%AE%E5%85%A8%E3%83%91%E3%82%BF%E3%83%BC%E3%83%B3%E3%81%AE%E7%B5%84%E3%81%BF%E5%90%88%E3%82%8F%E3%81%9B%E3%82%92%E9%85%8D%E5%88%97%E3%81%A7%E7%94%9F%E6%88%90">1から9までの全パターンの組み合わせを配列で生成</a></h1> <blockquote> <p>👨🏻 問題はここやな。</p> </blockquote> <pre><code class="python">num=[1,2,3,4,5,6,7,8,9] </code></pre> <blockquote> <p>👨🏻 これをfor文で総当たりにしたらええかな?</p> <p>👧 もっと簡単にできないの、パパ</p> <p>👨🏻 娘なんでわかるねん。</p> <p>👧 オ、ン、ナのカン</p> <p>👨🏻 カンがええ女はお母さんだけで充分や!</p> </blockquote> <h1 id="itertoolsを使う"><a href="#itertools%E3%82%92%E4%BD%BF%E3%81%86">itertoolsを使う</a></h1> <p>Pythonには、itertoolsという便利なモジュールがあります。</p> <blockquote> <p>👨🏻 おっ、便利そうなのがあるでこれで実装や。</p> </blockquote> <pre><code class="python">import itertools num=[1,2,3,4,5,6,7,8,9] list(itertools.permutations(num, 2)) </code></pre> <blockquote> <p>👨🏻 なんか犬がしゃべった気がするけど気のせいやな。</p> <p>👧 permutationsは、順列という意味よ</p> </blockquote> <h2 id="forでリストを取り出す"><a href="#for%E3%81%A7%E3%83%AA%E3%82%B9%E3%83%88%E3%82%92%E5%8F%96%E3%82%8A%E5%87%BA%E3%81%99">forでリストを取り出す</a></h2> <blockquote> <p>👨🏻 とりあえず、for文でリストを取り出して</p> <p>👧 []で要素にアクセス</p> <p>👨🏻 娘なんでそんなん知ってるねん。</p> </blockquote> <pre><code class="python">import itertools num=[1,2,3,4,5,6,7,8,9] numlist=list(itertools.permutations(num, 2)) for nums in numlist: print(str(nums[0])+"+"+str(nums[1])+"=") </code></pre> <h2 id="random.sample()でランダムに複数要素を取り出す。"><a href="#random.sample%28%29%E3%81%A7%E3%83%A9%E3%83%B3%E3%83%80%E3%83%A0%E3%81%AB%E8%A4%87%E6%95%B0%E8%A6%81%E7%B4%A0%E3%82%92%E5%8F%96%E3%82%8A%E5%87%BA%E3%81%99%E3%80%82">random.sample()でランダムに複数要素を取り出す。</a></h2> <blockquote> <p>👨🏻 あとはこれを配列に格納してランダムに取り出せるようにしよか</p> <p>👧複数の要素を重複無しで取り出すならrandom.sample()よ</p> <p>👨🏻なんでワイより詳しいねん。</p> </blockquote> <pre><code class="python">import itertools import random num=[1,2,3,4,5,6,7,8,9] sumlist=[] numlist=list(itertools.permutations(num, 2)) for nums in numlist: sumlist.append(str(nums[0])+"+"+str(nums[1])+"=") print(random.sample(sumlist,10)) </code></pre> <blockquote> <p>👨🏻おっしゃ、できたで!これで無限に小テストできるで!</p> <p>👧パパ。。明日から引き算するらしいの。。</p> <p>👨🏻えーーーーーーーー</p> </blockquote> <h2 id="動画付きはこちら"><a href="#%E5%8B%95%E7%94%BB%E4%BB%98%E3%81%8D%E3%81%AF%E3%81%93%E3%81%A1%E3%82%89">動画付きはこちら</a></h2> <p><a target="_blank" rel="nofollow noopener" href="https://www.coderecipe.org/example/example01.html">CodeRecepe</a></p> aocory tag:crieit.net,2005:PublicArticle/15007 2019-05-21T13:27:58+09:00 2019-05-21T13:27:58+09:00 https://crieit.net/posts/selenium-twitter-Tweet seleniumを使ってtwitterにログインしてTweetする <h1 id="seleniumを使ってtwitterにログインしてTweetする"><a href="#selenium%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6twitter%E3%81%AB%E3%83%AD%E3%82%B0%E3%82%A4%E3%83%B3%E3%81%97%E3%81%A6Tweet%E3%81%99%E3%82%8B">seleniumを使ってtwitterにログインしてTweetする</a></h1> <blockquote> <p>🐶今日は、seleniumを使ってtwitterにログインしてTweetする</p> <p>🐍API条件きつくて辛い。。</p> </blockquote> <h2 id="完成したコード"><a href="#%E5%AE%8C%E6%88%90%E3%81%97%E3%81%9F%E3%82%B3%E3%83%BC%E3%83%89">完成したコード</a></h2> <blockquote> <p>🐶完成したコードをおいとくで</p> <p>🐍書き換えの場所は<br /> + twitterID<br /> + twitterPass<br /> + tweet<br /> + webdriver.Chrome<br /> 🐍ここはしっかり変えないと動かないで</p> </blockquote> <pre><code class="python">from selenium import webdriver import time #driverの定義 driver = webdriver.Chrome("C:/chromedriver.exe") #twitterIDとtwitterPassを入力 twitterID="TwitterID" twitterPass="パスワード" #ツイート内容を入力 tweet="tweet内容 https://www.coderecipe.org/" #twitter Login def twitterLogin(twitterID,twitterPass): driver.get('https://www.twitter.com/') time.sleep(1) #ログインをクリック driver.find_element_by_css_selector('#doc > div > div.StaticLoggedOutHomePage-content > div.StaticLoggedOutHomePage-cell.StaticLoggedOutHomePage-utilityBlock > div.StaticLoggedOutHomePage-signupBlock > div.StaticLoggedOutHomePage-noSignupForm > div > a.js-nav.EdgeButton.EdgeButton--medium.EdgeButton--secondary.StaticLoggedOutHomePage-buttonLogin').click() time.sleep(2) #IDを入力 driver.find_element_by_css_selector('#page-container > div > div.signin-wrapper > form > fieldset > div:nth-child(2) > input').send_keys(twitterID) time.sleep(2) driver.find_element_by_css_selector('#page-container > div > div.signin-wrapper > form > fieldset > div:nth-child(3) > input').send_keys(twitterPass) time.sleep(2) driver.find_element_by_css_selector('#page-container > div > div.signin-wrapper > form > div.clearfix > button').click() time.sleep(2) def twitterTweet(tweet): driver.find_element_by_css_selector('#global-new-tweet-button').click() time.sleep(2) driver.find_element_by_css_sedriver = webdriver.Chrome("C:/chromedriver.exe")lector('#Tweetstorm-tweet-box-0 > div.tweet-box-content > div.tweet-content > div.RichEditor.RichEditor--emojiPicker.is-fakeFocus > div.RichEditor-container.u-borderRadiusInherit > div.RichEditor-scrollContainer.u-borderRadiusInherit > div.tweet-box.rich-editor.is-showPlaceholder').send_keys(tweet) time.sleep(2) driver.find_element_by_css_selector('#Tweetstorm-tweet-box-0 > div.tweet-box-content > div.TweetBoxToolbar > div.TweetBoxToolbar-tweetButton > span > button.SendTweetsButton.EdgeButton.EdgeButton--primary.EdgeButton--medium.js-send-tweets').click() time.sleep(120) twitterLogin(twitterID,twitterPass) twitterTweet(tweet) </code></pre> <h2 id="find_element_by_css_selector"><a href="#find_element_by_css_selector">find_element_by_css_selector</a></h2> <blockquote> <p>🐶<code>find_element_by_css_selector</code>でCSSセレクターに一致する最初の要素をとってくるねん。<code>find_elements_by_css_selector</code>にするとリスト要素になるからそこも注意な<br /> 🐍CSSセレクターは、検証ツールとかからコピーできるよ。</p> </blockquote> <h2 id="time.sleep(2)"><a href="#time.sleep%282%29">time.sleep(2)</a></h2> <blockquote> <p>🐶seleniumはブラウザを動かすツールやからレスポンス待つ時間を入れないと要素を読み込まない時があるねん<br /> 🐍秒数の2秒はデータやサーバーで変わるよ。</p> </blockquote> <h2 id=".click()"><a href="#.click%28%29">.click()</a></h2> <blockquote> <p>🐶これは指定する動作をクリックする命令や。<br /> 🐍秒数の2秒はデータやサーバーで変わるよ。</p> </blockquote> <h2 id="記事のポイント"><a href="#%E8%A8%98%E4%BA%8B%E3%81%AE%E3%83%9D%E3%82%A4%E3%83%B3%E3%83%88">記事のポイント</a></h2> <blockquote> <p>🐶ポイントをまとめると</p> </blockquote> <ul> <li><code>find_element_by_css_selector</code>で場所指定</li> <li><code>.click()</code>でクリック動作</li> <li><code>time.sleep(2)</code>は応答待ちで使う</li> </ul> <blockquote> <p>🐍seleniumにはまだまだ色々な機能があるよ</p> </blockquote> aocory