Этот код пытается скрестить листинг Amazon, чтобы проверить его доступность через первого поставщика Amazon.Программа Python соскабливает текст, несмотря на то, что веб-страница не меняется
from lxml import html
from time import sleep
import requests
import time
Amazonurl = raw_input("Item URL: ")
page = requests.get(Amazonurl)
tree = html.fromstring(page.text)
Stock = tree.xpath('//*[@id="merchant-info"]/text()')
IfInstock = ''.join(Stock)
if 'Ships from and sold by Amazon.com.' in IfInstock:
print 'Instock'
print time.strftime("%a, %d %b %Y %H:%M:%S")
else:
print 'Not in Stock'
print time.strftime("%a, %d %b %Y %H:%M:%S")
Как ни странно, когда я подключить, скажем, http://www.amazon.com/New-Nintendo-3DS-XL-Black/dp/B00S1LRX3W/ref=sr_1_1?ie=UTF8&qid=1438413018&sr=8-1&keywords=new+3ds, который не вышел на складе в течение последних нескольких дней, иногда код возвращает «Instock», в то время как другие времена, он вернется «Не акции". Я нашел, что это потому, что код так часто скребет
[]
в то время как другие времена, он скребет следующее, как это должно быть.
['\n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Ships from and sold by Amazon.com.\n \n \n \n \n \n \n \n \n Gift-wrap available.\n \n\n']
Веб-страница, похоже, не меняется. Кто-нибудь знает, почему мой результат часто меняется, и, возможно, объяснение того, как я могу исправить эту проблему? Заранее спасибо.
Просто убедитесь, что люди здесь могут помочь вам больше всего, я собираюсь посоветовать вам, пожалуйста, поделиться кодом, который может быть выполнен. Это делается для того, чтобы мы могли реплицировать вашу проблему. В этом случае отступ на вашем скрипте неверен. – gglasses
@gglasses Удалено «while True:», которое должно исправить проблему с отступом. –
И как часто вы обходите этот товар? – gglasses