美文网首页想法简友广场
python中不同方式打开网页的获取数据类型

python中不同方式打开网页的获取数据类型

作者: 刘年 | 来源:发表于2020-03-15 22:38 被阅读0次

1、requests类

requests类默认的.text是字符串格式,并且已经默认了编码格式,改变编码则是.content.decode(''),即先得到bytes类,再编码转为字符串

import requests
resp =requests.get("https://www.baidu.com")
print(type(resp.content))
print(type(resp.text))
print(type(resp.content.decode('utf-8')))
print(type(resp.text.encode('utf-8')))

结果

<class 'bytes'>
<class 'str'>
<class 'str'>
<class 'bytes'>

2、urlrequest类

urlrequest类一定要用read()表示网页内容,并且是一个bytes类。

from urllib import request
resp =request.urlopen("https://www.baidu.com")
print(type(resp.read()))
print(type(resp.read().decode('utf-8')))
<class 'bytes'>
<class 'str'>

3、selenium方式打开

from selenium import webdriver
import time
driver = webdriver.Firefox()
driver.get("https://www.baidu.com")
print(type(driver.page_source.encode('utf-8')))
print(type(driver.page_source.encode('utf-8').decode('utf-8')))
print(type(driver.page_source))
<class 'bytes'>
<class 'str'>
<class 'str'>

4、总结

注意区分各种形式打开网页得到数据的方法和类型
并且注意str和bytes类型之间的变化
str------encode()-----bytes
bytes------decode()-------str

相关文章

网友评论

    本文标题:python中不同方式打开网页的获取数据类型

    本文链接:https://www.haomeiwen.com/subject/qndiehtx.html