1

我在一个网站上寻找一个有货的东西真是太难了。我一直错过它大约半小时左右。

我怎样才能拉出尼康商店页面(http://shop.nikonusa.com/store/nikonusa/en_US/pd/productID.249538300)的内容并在灰色时向自己发送警报(address@gmail.com) “在哪里购买”按钮已替换为黄色的“立即购买”按钮(可在此处查看:http ://shop.nikonusa.com/store/nikonusa/en_US/pd/productID.226487200 )。这可能来自 bash 脚本,还是太复杂了?

谢谢!

4

2 回答 2

1

您可以使用curl抓取网页,然后使用 grep 搜索按钮的 alt 文本...

#!/bin/bash
#D800
x=$( curl -s http://shop.nikonusa.com/store/nikonusa/en_US/pd/productID.249538300 | grep 'alt="Buy Now"')
#D7000 (for testing)
#x=$( curl -s http://shop.nikonusa.com/store/nikonusa/en_US/pd/productID.226487200 | grep 'alt="Buy Now"')
if [ ! -n "$x" ]
then
    echo Not Available
    exit 1
fi
echo "Get clicking" | mail -s "D800 Available" you@example.com
于 2012-06-10T06:50:57.703 回答
0

我最终和 wget 一起丑化了一些东西。

如果有人遇到同样的问题,半消毒代码如下:

#!/bin/bash
while [ ! -f mailready ]
do
sleep 450
echo -e "\n Trying wget [URLHERE]"
wget -N [URLHERE]
        if grep -q buy-now [Downloaded URLfile]
        then
                echo -e "\n Buy now button found at [URL, DATE]\" > scriptbuffer
                cat mailheader scriptbuffer > mailready
                cat mailready| msmtp RECIPIENT@gmail.com
                echo -e "\nBuy-now button found... ending"
        else
                echo -e "\nNo Buy-now button found"
        fi
done

它对我来说非常好,不知道我在做什么。我将其设置为大约每 7 分钟检查一次,两三个小时后,我就可以下订单了。

于 2012-06-10T08:54:16.137 回答