[過去ログ] くだすれPython(超初心者用) その46【Ruby禁止】 (1002レス)
前次1-
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
496
(4): デフォルトの名無しさん [sage] 2020/02/06(木) 12:35:55.03 ID:/hIhK6yv(1/5) AAS
要素を非同期処理で読み込むから、要素が存在しないとか、
サイトの構成が変わったとか、
XPath/CSS セレクターが間違っているとか、
相手がアクセスをブロックしてくるとか

スクレイピングは、相手のサイトを分析するのが難しいのと、
適切に限定される、セレクターを作るのが難しい

API が公開されているなら、APIを使った方がよい

漏れは、Ruby で、Selenium WebDriver, Nokogiri などで、
Chrome, Edge などのブラウザーを自動操作して、スクレイピングするけど

ここに書いておいた

【VBScript】WSHについて話し合うスレ【JScript】
2chスレ:tech
498: 496 [sage] 2020/02/06(木) 12:45:42.46 ID:/hIhK6yv(2/5) AAS
>>492
Base64 は、HTML でもよく使う

Base64の文字列で、PNG/JPEG画像を、HTMLファイルに直接埋め込める

<img src="data:image/png;base64,xxxxx..." />
499: 496 [sage] 2020/02/06(木) 12:59:31.10 ID:/hIhK6yv(3/5) AAS
>>492
適切に、1つに限定される、セレクターを作るのが難しい!
以下で、特定できないのか?

class="rg_i Q4LuWd tx8vtf"
data-iid="0"
jsname="Q4LuWd"

それか、img 要素の外側で、id など、限定される要素を探すか。
基本的には、idを探さないと特定できない

idを振っていない場合は、そのサイト特有のルールを発見しないといけない!

例えば、5ch のスレ内では、id が無いから、
data-id に投稿番号が入っているので、それを使うとか

このように、相手のサイトを分析するのが難しい!
501: 496 [sage] 2020/02/06(木) 14:30:31.06 ID:/hIhK6yv(4/5) AAS
>>496
にも書いたけど、
要素をAjax で非同期処理に読み込むから、またimg 要素が存在しないとか?

Ruby で、Selenium WebDriver を使えば、要素が出現するまで、自動的にwait する。
await みたいに、非同期処理を同期的に書ける
502: 496 [sage] 2020/02/06(木) 14:34:29.34 ID:/hIhK6yv(5/5) AAS
もっと簡単に、10〜20 秒ぐらい、sleep したら、img 要素が出現しないのか?
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.039s