虽然海鲜市场现在已经不如以前了,但是还是可以捡漏的,省钱也是赚钱,最近正好有换机的准备,每天刷来刷去的浪费了好多时间,也会进入选择困难症。
参考了一些大神的思路写法,写了个简单抓取指定需求的爬虫代码,把自己想要的信息全部列出来。
主要列出了以下需求:机型,价格区间,回复率,信用高,个人玩家,一个简单的思路就可以出来
import requests
from bs4 import BeautifulSoup
# 使用代理
#免费领取爬虫ip: http://www.jshk.com.cn/mb/reg.asp?kefu=xjy&csdn
proxies = {
'http': 'http://10.10.1.10:3128',
'https': 'http://10.10.1.10:1080',
}
# 发送请求
url = 'https://www.xianyu.com' # 请替换为你要爬取的网页地址
headers = {'User-Agent': 'Mozilla/5.0'}
response = requests.get(url, headers=headers, proxies=proxies)
# 解析网页
soup = BeautifulSoup(response.text, 'html.parser')
# 提取信息
items = soup.find_all('div', class_='item-info') # 请根据实际的HTML结构进行修改
for item in items:
title = item.find('h2').text
price = float(item.find('span', class_='price').text) # 假设价格是一个浮点数
reply_rate = float(item.find('span', class_='reply-rate').text) # 假设回复率是一个浮点数
credit = item.find('span', class_='credit').text # 假设信用是一个字符串
# 检查机型
if 'iphone13' not in title.lower() and 'iphone14' not in title.lower() and 'iphone15' not in title.lower():
continue
# 检查价格
if price < 3000 or price > 5000:
continue
# 检查回复率
if reply_rate < 0.8: # 假设你希望回复率至少为80%
continue
# 检查信用
if credit != '优秀':
continue
print(f'{title}: {price}')
在你的代码中,你需要在提取信息部分添加筛选条件,以满足你的特定需求。这需要你对HTML结构有深入的了解,以便找到正确的标签和类。
要强调的是,网络爬虫可能会对网站服务器造成压力,过度使用可能会导致你的IP被封。请尽量减少请求频率,并尊重网站的robots.txt文件。
这些都只是简单的思路,重要的是灵活应用,淘机是不是也很简单,总要给生活多点小插曲,不然生活太单调了,程序员的日子就得多字多样,不然写代码干嘛。
欢迎交流,欢迎私信或平台,广交天下好友,少来抬杠。