前提・実現したいこと
現在「Pythonクローリング&スクレイピング データ収集・解析のための実践開発ガイド」を読みながらクローリング・スクレイピングの勉強をしています。基礎的なことをオンラインで勉強しただけの初心者です。
正規表現でのスクレイピングについて書籍通り?実行しても何も結果が出ず、
https://teratail.com/questions/176253
こちらなどを参考にしてもわからないため質問させていただきました。
書籍の内容
scrape_re.py
1import re 2from html import unescape 3 4with open('dp.html') as f: 5 html = f.read() 6 7for partical_html in re.findall(r'<a itemprop="url".*?</ur>\s*</a><li>', html, re.DOTALL): 8 url = re.search(r'<a itemprop="url" href="(.*?)">', partical_html).group(1) 9 url = 'http://sample.scraping-book.com/dp' + url 10 11 title = re.search(r'<p itemprop="name".*?</p>', partical_html).group(0) 12 title = title.replace('<br/>', '') 13 title = re.sub(r'<.*?>', '', title) 14 title = unescape(title) 15 16 print(url, title) 17
また、直接今回のエラーとは無関係かもしれませんが、そもそも書籍の流れによれば 'scraping/'ディレクトリを仮想環境として作業しているのですが諸々のpyファイルや、今回クローリングしてきたdp.htmlファイルは一つ上の階層に置いています。
特に書籍で指示はなかったのですが(見落としてるだけかもしれません)、scrapingの中に置くと下記のようなエラーが出るため試行錯誤して上の階層に置きましたがこれは正しいでしょうか?
違和感があるのでこちらも合わせて質問させていただきました。
/usr/local/Cellar/python/3.7.2_2/Frameworks/Python.framework/Versions/3.7/Resources/Python.app/Contents/MacOS/Python: can't open file 'scrape_re.py': [Errno 2] No such file or directory
乱文の上、質問が多岐に渡ってしまいましたが解決方法についてご教授いただけないでしょうか?
回答1件
あなたの回答
tips
プレビュー