利用GET请求通用代码爬取百度一下首页,网址为:http://www.baidu.com ,用lxml库的xpath选择器写网页解析函数parse(),解析并输出导航栏中的文本和链接。
时间: 2024-10-26 12:17:12 浏览: 73
首先,你需要安装`requests`, `lxml`以及`beautifulsoup4`这三个Python库,分别用于发送HTTP请求、解析HTML和处理XPath。这里是一个简单的示例,展示了如何利用GET请求抓取百度首页并解析导航栏:
```python
import requests
from lxml import etree
from bs4 import BeautifulSoup
def parse(url):
# 发送GET请求
response = requests.get(url)
# 检查请求是否成功
if response.status_code == 200:
# 解析响应内容为BeautifulSoup对象
soup = BeautifulSoup(response.text, 'lxml')
# 使用XPath选择导航栏元素
navigation_xpath = '//div[@id="container"]/div[@class="bd_searchbox"]//a'
nav_elements = soup.select(navigation_xpath)
# 遍历每个导航链接和其文本
for element in nav_elements:
link = element['href']
text = element.text.strip()
print(f"链接: {link}\n文本: {text}\n")
# 调用函数,抓取百度首页
parse('http://www.baidu.com')
```
注意:这个例子假设导航栏位于ID为"container"的`div`元素内,其中包含有class为"bd_searchbox"的`div`元素下的所有`<a>`标签。实际导航结构可能会有所不同,所以xpath表达式需要根据实际情况调整。
阅读全文