每日总结

今天又画了一点的网页。

学习了python的爬虫代码,主要是读别人的代码。

import urllib.request
import urllib.parse


url = 'https://www.baidu.com/s?wd='

# 请求对象的定制为了解决反爬的第一种手段
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.159 Safari/537.36'
}

# 将字变成unicode编码的格式
# 我们需要依赖于urllib.parse
name = urllib.parse.quote('狄仁杰')

url = url + name

# 请求对象的定制
request = urllib.request.Request(url=url,headers=headers)

# 模拟浏览器向服务器发送请求
response = urllib.request.urlopen(request)

# 获取响应的内容
content = response.read().decode('utf-8')

# 打印数据
print(content)

首先确定所要访问的网址,之后进行header的设置,解决反爬,之后需要进行数据的编码格式更改,随后进行数据拼接,定制请求对象,进行请求的发送,获取相应的response,对其进行utf-8的解码,打印数据。

下面是将数据进行unicode的编码格式:

import urllib.parse

data = {
    'wd':'周杰伦',
    'sex':'',
    'location':'中国台湾省'
}

a = urllib.parse.urlencode(data)
print(a)

下面是演示和以上代码相似的页面爬取显示页面。

import urllib.request
import urllib.parse

base_url = 'https://www.baidu.com/s?'

data = {
    'wd':'周杰伦',
    'sex':'',
    'location':'中国台湾省'
}

new_data = urllib.parse.urlencode(data)

# 请求资源路径
url = base_url + new_data

headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.159 Safari/537.36'
}

# 请求对象的定制
request = urllib.request.Request(url=url,headers=headers)

# 模拟浏览器向服务器发送请求
response = urllib.request.urlopen(request)

# 获取网页源码的数据
content = response.read().decode('utf-8')

# 打印数据
print(content)

 

posted @ 2023-10-02 22:14  一个小虎牙  阅读(4)  评论(0编辑  收藏  举报