我刚开始使用python。我正在尝试通过网络抓取一个网站以从中获取价格和标题。我遍历了多个教程和博客,最常见的库是漂亮的汤和scrapy
。 My question is that is there any way to scrape a website without using any library?
如果有一种无需使用beautifulsoup
和scrapy
之类的第三方库就可以抓取网站的方法。 It can use builtin libraries
请给我推荐一个博客,文章或教程,以便我可以学习
答案 0 :(得分:2)
可以使用scrapy
来代替urllib
。
您可以使用beautifulsoup
代替regex
。
但是scrapy
和beautifulsoup
使您的生活更轻松。
Scrapy
,不是简单的库,因此您可以使用requests
或urllib
。
答案 1 :(得分:0)
我认为python网站抓取中最好的,最受欢迎的,易于学习和使用的库是请求,lxml和BeautifulSoup的最新版本为bs4,摘要“请求”使我们向网站的服务器发出HTML请求以检索页面上的数据。获取网页的HTML内容是抓取网页的首要步骤。
让我们看一下Requests Python库的优缺点
优势:
缺点:
我们知道请求库无法解析从网页检索到的HTML。因此,我们需要lxml,高性能,快速,生产质量的HTML和XML解析Python库。
让我们看一下lxml Python库的优缺点。
优势:
缺点:
BeautifulSoup可能是Web抓取中使用最广泛的Python库。它创建了一个解析树,用于解析HTML和XML文档。 Beautiful Soup会自动将传入文档转换为Unicode,将传出文档转换为UTF-8。
Beautiful Soup库的一个主要优点是,它可以与设计欠佳的HTML一起很好地工作,并具有很多功能。精美汤和请求的组合在业界非常普遍。
优势:
缺点:
如果您想学习如何使用Beautiful Soup抓取网页,本教程适合您:
顺便说一下,您可以尝试使用许多库,例如Scrapy,用于Web Scraping的Selenium库,正则表达式和urllib