-2
私はPythonで削り取りを実践しています(私は初心者です)、この擦り切れ問題を抱えていました。私はBillboard Hot 100から曲のリストを掻き取ろうとしていましたが、結果は私が必要としていたものより少なかったです。Billboard Hot 100掻き上げ問題
ここにコードがあります。ご覧のとおり、私は曲を辞書に保存してから印刷しています。 lxmlのインポートHTML インポート要求 ページ= requests.get( 'http://www.billboard.com/charts/hot-100')から ツリー= html.fromstring(page.content) 看板= {}
for x in range(1, 51):
currSongY = '//*[@id="main"]/div[2]/div/div[1]/article[' + str(x) + ']/div[1]/div[4]/div[3]/div/h2/text()'
currArtistY = '//*[@id="main"]/div[2]/div/div[1]/article[' + str(x) + ']/div[1]/div[4]/div[3]/div/a/text()'
currSongX = tree.xpath(currSongY)
currArtistX = tree.xpath(currArtistY)
if currArtistX == '[]' and currSongX == '[]':
currSongY = '//*[@id="main"]/div[2]/div/div[1]/article[' + str(x) + ']/div[1]/div[3]/div[3]/div/h2/text()'
currArtistY = '//*[@id="main"]/div[2]/div/div[1]/article[' + str(x) + ']/div[1]/div[3]/div[3]/div/a/text()'
currSongX = tree.xpath(currSongY)
currArtistX = tree.xpath(currArtistY)
if currArtistX == '[]' and currSongX == '[]':
currSongY = '//*[@id="main"]/div[2]/div/div[1]/article[' + str(x) + ']/div[1]/div[2]/div[3]/div/h2/text()'
currArtistY = '//*[@id="main"]/div[2]/div/div[1]/article[' + str(x) + ']/div[1]/div[2]/div[3]/div/a/text()'
currSongX = tree.xpath(currSongY)
currArtistX = tree.xpath(currArtistY)
currSong = str(currSongX)[2:(len(str(currSongX))-2)]
#currArtist = str(currArtistX)[4:(len(str(currArtistX))-4)]
currArtist = str(currArtistX).replace("\\n","")
billboard[x] = (currSong, currArtist)
print (billboard)
ここでの結果は次のとおり
> {1: ('Despacito', "['Luis Fonsi & Daddy Yankee Featuring Justin Bieber']"), 2: ('', '[]'), 3: ('', '[]'), 4: ('', '[]'), 5: ('', '[]'), 6: ('', '[]'), 7: ('', '[]'), 8: ('', '[]'), 9: ('', '[]'), 10: ('', '[]'), 11: ('', '[]'), 12: ('', '[]'), 13: ('', '[]'), 14: ('', '[]'), 15: ('', '[]'), 16: ('', '[]'), 17: ('', '[]'), 18: ('', '[]'), 19: ('', '[]'), 20: ('', '[]'), 21: ('', '[]'), 22: ('', '[]'), 23: ('Bad Liar', "['Selena Gomez']"), 24: ('', '[]'), 25: ('', '[]'), 26: ('', '[]'), 27: ('', '[]'), 28: ('', '[]'), 29: ('', '[]'), 30: ('', '[]'), 31: ('', '[]'), 32: ('', '[]'), 33: ('', '[]'), 34: ('', '[]'), 35: ('', '[]'), 36: ('', '[]'), 37: ('Everyday We Lit', "['YFN Lucci Featuring PnB Rock']"), 38: ('', '[]'), 39: ('', '[]'), 40: ('', '[]'), 41: ('', '[]'), 42: ('', '[]'), 43: ('', '[]'), 44: ('', '[]'), 45: ('', '[]'), 46: ('', '[]'), 47: ('', '[]'), 48: ('', '[]'), 49: ('', '[]'), 50: ('', '[]')} >>>
お気軽にお問い合わせください!!!!!
ようこそスタックオーバーフロー。あなたの期待する結果は何ですか? – TomServo