Python3从搜狐国际新闻抓取—尝试版
点击此处获取完整代码
- 依赖包版本信息
Python 3.7.2
requests 2.21.0
beautifulsoup4 4.6.3
首先下载HTML代码到本地
import requests
from bs4 import BeautifulSoup
url = 'http://www.sohu.com/c/8/1461'
res = requests.get(url)
res.encoding = 'utf-8'
print(res.text)
- 观察HTML也代码结构以及想要爬取的位置
使用BeautifulSoup解析
soup = BeautifulSoup(res.text, 'html.parser')
- 此处可以使用
print(soup.text)
查看
# data-role="news-item"
# <div class="news-box clear news-box-aa">
# 上述class为多值的属性(空格隔开)
model = soup.select('.news-box-aa')
print(type(model))
print(model)
- 此处model的类型为:<class ‘list’>,一个列表。
- model[i],存放着每一条新闻的标题,以及详情链接
print(type(model[0]))
print(model[0])
- 可以看到model列表的第一个元素的类型和值
- type(model[0]) 为<class ‘bs4.element.Tag’>
- 结果如下:
<div class="new