作为python初学者,使用scrapy抓取“<li >里面,class为“title”里《p》标记里的地址,并且采集class为“info-section”的div标记里《p》标记里的class="currency" 《em》标记里的价格
时间: 2024-03-04 07:50:39 浏览: 68
基于Python的scrapy的使用
好的,针对你的问题,我可以给你提供以下思路:
1. 首先需要安装Scrapy,并创建一个新的Scrapy项目。
2. 在Scrapy项目中,创建一个新的Spider,用于爬取目标网站的数据。
3. 在Spider中,编写爬取规则,使用XPath或CSS Selector来定位目标数据的位置。
4. 使用Scrapy提供的Item和Pipeline功能,将爬取到的数据存储到本地或者数据库中。
下面是一个简单的Spider示例,用于爬取目标网站的信息:
```python
import scrapy
class MySpider(scrapy.Spider):
name = "myspider"
start_urls = [
"https://example.com"
]
def parse(self, response):
# 获取class为"title"的<li>标记中,<p>标记里的地址
addresses = response.xpath('//li[@class="title"]/p/text()')
# 获取class为"currency"的<em>标记里的价格
prices = response.css('.info-section p.currency em::text')
# 将爬取到的数据存储到Item中
for address, price in zip(addresses, prices):
item = MyItem()
item['address'] = address.extract()
item['price'] = price.extract()
yield item
```
请注意,这只是一个简单的示例,你需要根据自己的实际需求,修改爬取规则和存储方式。同时,你需要自己去寻找目标网站的URL和对应的XPath或CSS Selector。
阅读全文