Jan 01, 1970
requests HTTP 库用于使用带有
.get()
功能。 # app.py import requests response = requests.get( '//news.ycombinator.com/news' ) yc_web_page = response.text print(yc_web_page)
requests
模块.get()
功能从提供的网站链接下载 HTML 文件.text
如果您使用命令 python 运行此代码
app.py
它没有给你任何输出,这意味着需要安装两个导入的模块。加载低于指令来的安装版块。 pip3 install requests pip install beautifulsoup4
接下来,让我们更新
app.py
使用漂亮的汤与其余代码一起文件: # main.py import requests from bs4 import BeautifulSoup # add this
response = requests.get( '//news.ycombinator.com/news' ) yc_web_page = response.text # add this
soup = BeautifulSoup(yc_web_page, 'html.parser' ) article_tag = soup.find(name= "a" , class_= 'titlelink' ) article_title = article_tag.get_text() article_link = article_tag.get( 'href' ) article_upvote = soup.find(name= "span" , class_= "score" ).get_text() result = { "title" : article_title, "link" : article_link, "point" : article_upvote } print(result)
yc_web_page
使用 BeautifulSoup 功能和html.parser
获取 HTML 文件在浏览其余代码之前,让我们使用提供的链接打开我们的网络浏览器
.get()
接下来,在页面上右击,点击inspect,查看YCombinator新闻页面的elements选项卡。
各位的网页页面想必是如此的:find()
具有元素名称、 a标签和class_
带下划线。这样做是为了防止覆盖网页元素中的类article_tag
使用.get_text()
功能article_tag
使用属性href
与.get()
功能article_upvote
变量,其中标签名称, <span>
, 类名用于提取每篇文章链接的点数