(1)自选一个静态网站,使用requests库生成HTTP请求、查看状态码与编码; (2)使用requests库处理请求头与响应头、设置超时; (3)使用Chrome开发者工具的元素面板查看页面元素和页面源码; (4)使用正则表达式模块匹配字符串; (5)使用正则表达式查找网页中的标题内容; (6)使用正则表达式查找网页文本内容; (7)把查找到的数据保存到本地文件;
时间: 2023-12-04 19:02:40 浏览: 102
好的,我来分步回答你的问题。
1. 生成HTTP请求、查看状态码与编码
首先,我们需要导入requests库,并使用requests.get()函数发送GET请求获取网页内容。代码如下:
```python
import requests
url = "https://www.example.com"
response = requests.get(url)
# 获取状态码
status_code = response.status_code
print("状态码:", status_code)
# 获取编码格式
encoding = response.encoding
print("编码格式:", encoding)
```
2. 处理请求头与响应头、设置超时
我们可以使用headers参数设置请求头,使用response.headers获取响应头。同时,我们可以使用timeout参数设置超时时间。代码如下:
```python
import requests
url = "https://www.example.com"
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3"}
response = requests.get(url, headers=headers, timeout=10)
# 获取响应头
response_headers = response.headers
print("响应头:", response_headers)
```
3. 查看页面元素和页面源码
我们可以使用Chrome开发者工具的元素面板查看页面元素和页面源码。在网页上右键点击,选择“检查”或“检查元素”,即可打开Chrome开发者工具。在开发者工具中,我们可以使用元素面板查看网页元素,使用源代码面板查看网页源代码。
4. 使用正则表达式模块匹配字符串
在Python中,可以使用re模块进行正则表达式匹配。下面是一个简单的示例,用于从字符串中提取数字:
```python
import re
text = "The price of the product is $50.99."
pattern = r"\d+\.\d+"
result = re.findall(pattern, text)
print(result)
```
5. 使用正则表达式查找网页中的标题内容
下面是一个简单的示例,用于从网页源代码中查找<title>标签中的内容:
```python
import requests
import re
url = "https://www.example.com"
response = requests.get(url)
html = response.text
pattern = r"<title>(.*?)</title>"
result = re.findall(pattern, html)
print(result)
```
6. 使用正则表达式查找网页文本内容
下面是一个简单的示例,用于从网页源代码中查找特定文本:
```python
import requests
import re
url = "https://www.example.com"
response = requests.get(url)
html = response.text
pattern = r"example"
result = re.findall(pattern, html)
print(result)
```
7. 把查找到的数据保存到本地文件
我们可以使用Python的文件操作功能将查找到的数据保存到本地文件中。下面是一个简单的示例,用于将查找到的数据保存到本地文件中:
```python
import requests
import re
url = "https://www.example.com"
response = requests.get(url)
html = response.text
pattern = r"<title>(.*?)</title>"
result = re.findall(pattern, html)
with open("title.txt", "w", encoding="utf-8") as f:
f.write(str(result))
```
以上就是对你问题的回答,希望能对你有所帮助。
阅读全文