1
我使用Python与请求和lxml从Craigslist搜索返回价格数组。当我运行代码时,会打印一个空白数组。我尝试了几个不同的xpath,但都没有工作。Python网页抓取。 xpath返回一个空的数组
编辑:我添加了其余的代码,包括函数被调用的地方。
from tkinter import *
import requests
from lxml import html
window = Tk()
window.title('Craigslist Apartment Finder')
window.resizable(width=False, height=True)
def getSearch():
s1 = searchterm1.get()
s2 = searchterm2.get()
s3 = searchterm3.get()
if s1 != "":
url = "https://newyork.craigslist.org/search/brk/roo?sort=date&availabilityMode=0&query=" + s1
if s2 != "":
url = url + "+" + s2
if s3 != "":
url = url + "+" + s3
if s1 != "" or s2 != "" or s3 != "":
print(url)
else:
print("No search terms entered.")
page = requests.get(url)
print(page)
tree = html.fromstring(page.content)
price = tree.xpath('//span[class="result-price"]/text()')
print("Prices:", price)
searchterm1 = Entry(window)
searchterm2 = Entry(window)
searchterm3 = Entry(window)
programname = Label(window, text="Apartment Finder")
runbutton = Button(window, text="Run", bg="green", fg="white", width=10, command=getSearch)
displayurl = Label(window, text="url")
programname.grid(row=0, column=0, columnspan=2)
runbutton.grid(row=0, column=2)
searchterm1.grid(row=1, column=0)
searchterm2.grid(row=1, column=1)
searchterm3.grid(row=1, column=2)
displayurl.grid(row=2, column=0, columnspan=3)
window.mainloop()
你能否提供你正在运行的整个代码,或测试案例?现在我看到的只是一个没有被调用的函数。 – galfisher
发表示例url –
新增所有代码@galfisher – PanczerTank