用Python写一段代码,使用xpath 语法,爬取中关村手机网的所有手机型号
时间: 2023-03-09 21:41:48 浏览: 102
代码如下:from lxml import etree
import requestsurl = 'http://detail.zol.com.cn/cell_phone_index/subcate57_0_list_1_0_1_2_0_0.html'headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.122 Safari/537.36'}response = requests.get(url, headers=headers)html = etree.HTML(response.text)# 使用xpath获取所有手机型号
phone_list = html.xpath("//div[@class='list-item']//div[@class='item-name']/a/text()")print(phone_list)
相关问题
python用xpath百度爬取xpath
您好!要使用Python和XPath来爬取百度的内容,您可以按照以下步骤进行操作:
首先,您需要安装所需的Python库。请使用以下命令安装`requests`和`lxml`库:
```python
pip install requests lxml
```
接下来,请使用以下代码段来爬取百度搜索结果的标题和链接:
```python
import requests
from lxml import etree
def search_baidu(query):
url = f"https://www.baidu.com/s?wd={query}"
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)
html = response.text
tree = etree.HTML(html)
titles = tree.xpath('//h3[@class="t"]/a')
for title in titles:
print("标题:", title.text)
print("链接:", title.get("href"))
query = "XPath"
search_baidu(query)
```
这个代码会输出百度搜索结果的标题和链接。您可以将`query`变量设置为您要搜索的关键字。在这个例子中,我们搜索的是"XPath"。
请注意,为了避免被反爬虫机制阻止,我们添加了一个伪装头部信息。
希望这能帮到您!如有任何问题,请随时向我提问。
python中通过xpath爬取图片中xpath如何使用
在Python中使用XPath来爬取图片,首先需要使用XPath选择器来选择图片所在的HTML元素,然后通过该元素的属性获取图片的URL。
下面是一个示例代码,演示如何使用XPath来爬取图片:
```python
import requests
from lxml import etree
# 发送请求获取页面内容
url = "https://example.com"
response = requests.get(url)
html = response.text
# 使用XPath选择器解析页面内容
tree = etree.HTML(html)
# 使用XPath选择图片元素并获取图片URL
img_elements = tree.xpath("//img")
for img_element in img_elements:
img_url = img_element.get("src")
print(img_url)
```
在上面的代码中,我们先发送一个请求获取页面内容,然后使用lxml库中的etree模块创建一个XPath选择器对象来解析页面内容。接着,我们使用XPath选择器的`xpath`方法选择所有的`<img>`标签,并循环遍历每个`<img>`标签,通过`get`方法获取`src`属性即可获得图片的URL。