前提・実現したいこと
スクレイピング結果から、特定の文字列を消したい
pythonでWebページのスクレイピングを行っています。
取得結果から特定の文字列を消したいが、replaceを行なってもエラーが出てしまいます。
発生している問題・エラーメッセージ
"None"という文字列を消したいがうまくいかない。
エラーメッセージ
AttributeError: 'NoneType' object has no attribute 'replace'
python
1```ここに言語を入力 2from bs4 import BeautifulSoup 3 4import requests 5 6html_doc=requests.get("https://www.springfieldspringfield.co.uk/movie_script.php?movie=sgt-stubby-an-american-hero").text 7 8soup = BeautifulSoup(html_doc, 'html.parser') 9print(soup.prettify()) 10 11scripts=soup.find("div",{"class":"scrolling-script-container"}) 12 13for script in scripts: 14 script_sec=script.string 15 print(script_sec.replace("None","")) 16 17 1 18--------------------------------------------------------------------------- 19AttributeError Traceback (most recent call last) 20<ipython-input-103-8bda78b9a81a> in <module>() 21 2 for script in scripts: 22 3 script_sec=script.string 23----> 4 print(script_sec.replace("None","")) 24 5 #print(script.string) 25 26AttributeError: 'NoneType' object has no attribute 'replace'
試したこと
scripts=soup.find("div",{"class":"scrolling-script-container"}) for script in scripts: print(script.string)
の取得結果が
"None [barking] None [groaning] None Oh... None - Oh... None - [barking] None Come on, come on,"
といった形だったので、
"None"を消去するために"replace"を行なったがエラーが出てしまいました。
"None"の文字列を消して、取得結果を表示させたいです。
よろしくお願いします。
初めて質問させていただきます。
何か失礼があったら申し訳ありません。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/12/12 00:45