我对编程和 Python 还很陌生。构建一个项目来自动执行我日常工作中的一些繁琐任务。我有一个有效的 python 脚本,可以从多个网站提取数据并进行比较,以确保我们的广告在多个广告平台上保持一致。我将解释我想做的事情的目标,然后解释我是如何尝试做到这一点的,看看我是否走在正确的轨道上,只是没有做得正确,或者是否有更好的路线希望有人可以走可以为我指明正确的方向。
我的工作在我们自己的个人网站(网站 A)上列出了我们的所有库存,而另一个网站(网站 B)仅包含价格为 150 美元或以上的商品。所以我想做的是只抓取网站 A 上大于或等于 150 美元的商品的名称/价格,然后抓取网站 B 上的所有商品并获取商品列表,然后从网站 A 中减去网站 B 并得到网站 A 上剩余的 150 美元或以上但未在网站 B 上列出的商品。希望这是有道理的。
xtitles = driver.find_elements_by_class_name("product-name")
xprices = driver.find_elements_by_class_name("content-item price")
xjoined = {}
for title in xtitles:
xtitletext = [title.text]
for price in ggprices:
xpricetext = price.text
xjoined.update({xtitletext:xpricetext})
print(xjoined)
driver.quit()
这是我尝试使用的一些示例代码。我觉得我已经很接近了,但无法让它正常工作。尝试从网站 A 中提取商品的标题和价格并将它们合并在一起,以便我可以从网站 B 中提取相同的内容并进行交叉检查。可能有比我现在这样做更好的方法,但我想我会在这里问,看看人们怎么说。提前致谢!
最佳答案
您似乎在询问 set intersection 。 让我们为个人网站和其他网站上的昂贵元素分配一些任意标识符,并找到 difference :
site_a = set('cdeghklm')
site_b = set('cefhijlnop')
print(sorted(site_a - site_b))
['d', 'g', 'k', 'm']
关于python - 如何将多个元素分配给单个列表变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55436425/