我正在尝试使用Selenium从Google购物中获取价格。我目前已使其打开Chrome,前往Google购物并搜索产品代码,但是我找不到一种方法来点击产品,因为我找不到该产品的href标识符或获取产品名称的方法,这样我就可以通过部分文字匹配使它点击。
我尝试查看其他存在类似问题的人,但是他们似乎都为他们要单击的链接找到了唯一的标识符。
class MyDialog:
def __init__(self, parent):
top = self.top = Toplevel(parent)
Label(top, text="Product EAN:").pack()
self.e = Entry(top, cursor = "xterm", width=25)
self.e.pack(padx=40)
b = Button(top, text="Submit", command=self.ok, cursor = "hand2")
b.pack(pady=5)
def ok(self):
driver = webdriver.Chrome()
driver.get("http://www.google.co.uk/shopping")
search_box = driver.find_element_by_name('q')
search_box.send_keys(self.e.get())
search_box.submit()
root = Tk()
d = MyDialog(root)
root.wait_window(d.top)
也许有一种方法可以获取产品名称,然后部分匹配该文本以单击,但是我不确定该如何处理。我的最终目标是从Google购物中抓取卖家及其价格,然后格式化并将其输出到文件中-我尝试了其他方法,但Selenium看来到目前为止最不复杂。