xpath爬取全国天气
时间: 2023-10-22 12:04:41 浏览: 109
可以使用 XPath 爬取全国天气信息。具体的步骤如下:
1. 打开网站 https://www.tianqi.com/
2. 打开浏览器开发者工具,切换到 Network 选项卡,并勾选上 Preserve log 选项
3. 在网站上输入城市名,点击搜索按钮
4. 在网页中找到一个名称为 search.php 的请求,点击该请求,在 Request Headers 中找到 Cookie
5. 复制 Cookie 中的内容,并保存到程序中
6. 通过 requests 库向 search.php 发送 POST 请求,携带城市名和 Cookie 信息
7. 解析返回的 HTML 页面,使用 XPath 抽取所需信息
以下是示例代码:
```python
import requests
from lxml import etree
# 设置请求头中的 Cookie
cookie = '...'
# 设置请求参数
data = {
'q': '北京', # 城市名
'c': '1' # 查询天气的类型(1 表示详细信息)
}
# 发送 POST 请求,并携带 Cookie 和请求参数
url = 'https://www.tianqi.com/search.php'
response = requests.post(url, data, headers={'Cookie': cookie})
# 解析返回的 HTML 页面,使用 XPath 抽取所需信息
html = etree.HTML(response.text)
info = html.xpath('//div[@class="weather_box"]/div[@class="left"]/ul/li/text()')
# 输出抽取的信息
for item in info:
print(item.strip())
# 相关问题:
阅读全文