Comments (21)
Awesome! again, thanks for the super quick response. Expect more questions as I work on it and a pull request soon!
from billboard-charts.
Yup, looks very much broken. They changed the UI sometime in the past 20 hours.
I can't work on this at the moment, but perhaps someone else can take a look.
Thanks for reporting this!
from billboard-charts.
Thanks for the super-quick response. Do you think this is reparable? Would you be able to work on it within the next week? I'm willing to help, but you would definitely be able to fix it much more quickly.
Again, thanks for the quick response, and sorry to ask you to work on it, but I've really enjoyed using this module and would like to continue doing so.
from billboard-charts.
I'm overseas without a laptop until the 25th. 🙁
from billboard-charts.
Darn, that's pretty awesome though. Hope you're having fun.
Would you be opposed to me working on a fix in the meantime? If not, do you have any tips/recommendations on how to tackle this? Would you be able to look at a pull request while overseas?
Enjoy your trip!
from billboard-charts.
Would you be opposed to me working on a fix in the meantime?
Of course not! I would be very grateful if you did that.
If not, do you have any tips/recommendations on how to tackle this?
The logic for parsing the HTML is pretty straightforward. Ugly, even. Fixing the logic will mostly involve looking at the new HTML, updating the scraping code, and testing.
Oh, and there are already unit tests written, so you'll know when you have it correct. :)
Would you be able to look at a pull request while overseas?
Probably!
from billboard-charts.
@mcookhome I'll keep an eye out for a PR, but let me know if you need any help or testing. I have an application using these charts and would be glad to help out.
from billboard-charts.
thanks @danielunderwood!
I actually submitted and merged a PR yesterday! Allen merged and deployed to PyPI, so some features should be moderately back to normal (buggy, but somewhat functional instead of not at all).
The artist charts are definitely not working. If you find any other issues while using the application, definitely keep me posted! I've been finding some already.
from billboard-charts.
Ahh I missed that PR. Looks like albums are working for me, though the artist-100 chart does fail with
Traceback (most recent call last):
File "<input>", line 1, in <module>
File "billboard.py", line 135, in __init__
self.fetchEntries()
File "billboard.py", line 207, in fetchEntries
raise BillboardParseException(message)
BillboardParseException: Failed to parse top track artist
and artist-50 fails with
Traceback (most recent call last):
File "<input>", line 1, in <module>
File "billboard.py", line 135, in __init__
self.fetchEntries()
File "billboard.py", line 197, in fetchEntries
raise BillboardParseException(message)
BillboardParseException: Failed to parse top track title
from billboard-charts.
im still getting nothing for old R&B charts :/
i tried reinstalling but no luck...
thanks to everyone who's working on this!
from billboard-charts.
which chart? is it songs or artists?
which date?
what error are you getting? I would say what are are you getting, if any, but I'm pretty sure you should be getting an error
from billboard-charts.
it's the R&B/Hip-Hop Albums chart
mostly calling it in this function:
def charto(chart='r-b-hip-hop-albums', date='1984-01-22'):
return billboard.ChartData(chart, date)
and it's returning absolutely nothing, just the "r-b-hip-hop-albums chart from 1984-01-22" header with nothing under it
from billboard-charts.
ah yes, albums make sense: I didn't touch any of that when doing the initial fix
from billboard-charts.
Just pushed version 4.4.2 to PyPI.
I think the major breakdowns caused by the UI change have now all been resolved. Thanks again to @mcookhome and @johannfrias.
I expect many more minor bugs to be found in the coming weeks.
This UI change revealed several notable gaps in test coverage:
- We have no tests involving albums charts.
- We have no test for when a non-existent chart name is used:
billboard.ChartData('nonsense')
. We don't even have a specified behavior for this case. - We had (until 8a46ef0) no tests for
previousDate
andnextDate
. - We need more tests involving date edge cases (earliest chart, most recent chart, etc.).
I will make a new issue for these.
from billboard-charts.
@afriedman412: Your problem with the R&B/Hip-Hop Albums chart should be resolved.
from billboard-charts.
Is this still an issue going on or am I missing something? I am using version 4.4.2
Also let me know if this is the wrong place to ask, I am still new to commenting on github.
from billboard-charts.
I'm able to reproduce this issue, too, @ProfoundWanderer.
@guoguo12, I'm not able to fiddle with this right now, but it looks like it's also having the same issue when passing the date, too
from billboard-charts.
Update: I typed 'top-100'
instead of 'hot-100'
and got the above error. However, when I do 'hot-100'
it works. So I am not able to reproduce. I do think we should have better error handling on the chart titles soon, though.
Here's a Pyfiddle showing it working @ProfoundWanderer. can you try it again please?
from billboard-charts.
@mcookhome I am still getting the same issue but it may be this machine so I am going to try a different one when I go home and report back.
from billboard-charts.
that would be helpful. I'm not in a great place to test right now, so I appreciate it. Sorry for the inconvenience: everything is in a state of flux right now because Billboard just changed their UI about a week ago.
from billboard-charts.
@mcookhome I worked at home on my personal computer using pycharm but at work using pythonanywhere it gets the error I mentioned before so I believe the issue is with pythonanywhere not sure why though. I will just run it from my computer from here on out.
from billboard-charts.
Related Issues (20)
- Specify a year HOT 1
- image url not working? HOT 7
- Billboard 200 not returning any charts prior to 11/18/1989 HOT 3
- _parseNewStylePage fails bc of previousDate HOT 1
- API suddenly not work! HOT 3
- API doesnt work HOT 1
- Api problems HOT 3
- Charts relying on "old style" parsing missing previousDate & nextDate at extremes HOT 1
- Produces a 67 second delay every 24 requests. HOT 2
- Issue with old style? HOT 2
- Chart Data Error HOT 1
- unable to get image of track HOT 3
- Cannot fetch the Hot 100 chart HOT 3
- This API NOT WORK NOW! HOT 5
- List of Charts
- Do not working HOT 1
- Pulling charts by date returns empty!
- Previous date field is not filled HOT 3
- Not able to pull metadata for new TikTok charts HOT 2
- 2024 charts
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from billboard-charts.