EDIT:
Tweakers had mij gevraagd om de api neer te halen, dus heb ik dat gedaan.
Het was een leuk project om aan te werken en ik heb er veel lol in gehad.
De cache is verwijderd en de dns instellingen van mijn domein zijn aangepast. Het kan nog even duren voordat tweakers.marnixbouhuis.nl helemaal niet meer bereikbaar is.
Met vriendelijke groet,
Marnix
Hey allemaal,
Ik heb me de laatste 2 dagen bezig gehouden met het ontwikkelen van een tweakers scraper api.
De api is nog in ontwikkeling dus er kunnen nog dingen veranderen
.
Hij bied alleen maar data aan die beschikbaar is zonder dat je een account hebt (dus hij kan niet worden gebruikt om automatisch op vraag en aanbod dingen te reageren bijvoorbeeld).
Je hebt een api key nodig om de api te kunnen gebruiken. Aan een key zit een limiet vast van 100 requests per dag. Dit limit heb ik er in gezet omdat dingen hosten/ontwikkelen ook gewoon tijd en geld kost.
Je kan een key krijgen door een pm naar mij te sturen met daar in de vraag naar een key. Vervolgens zal ik je zo snel mogelijk de key sturen.
EDIT: Het is nu nodig om een gelig tweakers abonnement te hebben op het account waar je de api key mee opvraagt. Als je abonnement verloopt heb je een paar dagen voordat de api key vervalt. Dit was nodig omdat tweakers zijn inkomsten krijgt d.m.v. advertenties en je met een tweakers abbonement geen advertenties meer ziet.
De volgende dingen kan je nu opvragen met de api:
Dit is hoe je de api tot nu toe moet gebruiken:
Opvragen van crew informatie
URL: https://tweakers.marnixbouhuis.nl/crew/IDHIER/?apikey=x
IDHIER is hier de id van het crew lid. Deze kan je vinden in de url van de crew pagina, bijvoorbeeld voor de url 'https://tweakers.net/crew/296/' is het id 296. De 'x' vervang je door je api key.
Response
Opvragen van gebruikers informatie
URL: https://tweakers.marnixbouhuis.nl/users/IDHIER/?apikey=x
IDHIER is hier de id van de gebruiker. Deze kan je vinden in de url van de gallery pagina, bijvoorbeeld voor de url 'https://tweakers.net/gallery/123456/' is het id 123456. De 'x' vervang je door je api key.
Response
Dit is een response voor de gebruiker met het id 1 (AKA Femme Taken)
image kan een url bevatten naar de afbeelding of is null.
De personal data array is een array opgebouwd uit alle data uit de Persoonlijke gegevens tabel op het profiel (zonder de link naar het forum).
De social media links array bevat links naar de gene zijn social media accounts, deze array kan ook leeg zijn.
Opvragen van nieuws van een datum
URL: https://tweakers.marnixbouhuis.nl/news/date/DATUM/?apikey=x
DATUM is de datum van de nieuws berichten (als je 1 februari 2017 wil dat is de datum het volgende: 20170201). De 'x' vervang je door je api key.
Response
Dit is een response voor de datum 20170205 (5 februari 2017)
De post array bevat de id's van de nieuwsberichten van die dag.
[b]Opvragen van een nieuwsbericht/b]
URL: https://tweakers.marnixbouhuis.nl/news/id/BERICHT/?apikey=x
BERICHT is de id van het nieuwsbericht, deze kan je krijgen door het nieuws op te vragen voor een dag of je kan de id ook verkrijgen door naar de url te kijken vaan een nieuwsbericht (voor de url nieuws: Rock Band VR komt op 23 maart uit voor Oculus Rift is het nieuwsbericht id 120959). De 'x' vervang je door je api key.
Response
Dit is een response voor het nieuwsbericht met een id van 120959
Related bevat een array met nieuwsbericht id's die gerelateerd zijn aan dit nieuwsbericht.
Content bevat de html van het bericht.
Als een request goed behandeld is stuurt die altijd een 200 status code.
Als er iets mis gaat bevat 'message' altijd verdere uitleg over het probleem.
Als een request niet goed is dan stuurt die altijd een 400 status code.
Als je door je dagelijkse aantal requests heen bent dan stuurt die een 429 status code.
Als de api key niet goed is, stuurt die een 401 status code.
Als er intern wat fout gegaan is, dan stuurt die een 500 status code.
Het status variable en de http status code zijn ook altijd het zelfde.
Ik ben van plan om uiteindelijk ook de rest van de tweakers onderdelen te gaan implementeren.
Suggesties en bug reports zijn altijd welkom
.
- Marnix
Tweakers had mij gevraagd om de api neer te halen, dus heb ik dat gedaan.
Het was een leuk project om aan te werken en ik heb er veel lol in gehad.
De cache is verwijderd en de dns instellingen van mijn domein zijn aangepast. Het kan nog even duren voordat tweakers.marnixbouhuis.nl helemaal niet meer bereikbaar is.
Met vriendelijke groet,
Marnix
Hey allemaal,
Ik heb me de laatste 2 dagen bezig gehouden met het ontwikkelen van een tweakers scraper api.
De api is nog in ontwikkeling dus er kunnen nog dingen veranderen

Hij bied alleen maar data aan die beschikbaar is zonder dat je een account hebt (dus hij kan niet worden gebruikt om automatisch op vraag en aanbod dingen te reageren bijvoorbeeld).
Je hebt een api key nodig om de api te kunnen gebruiken. Aan een key zit een limiet vast van 100 requests per dag. Dit limit heb ik er in gezet omdat dingen hosten/ontwikkelen ook gewoon tijd en geld kost.
Je kan een key krijgen door een pm naar mij te sturen met daar in de vraag naar een key. Vervolgens zal ik je zo snel mogelijk de key sturen.
EDIT: Het is nu nodig om een gelig tweakers abonnement te hebben op het account waar je de api key mee opvraagt. Als je abonnement verloopt heb je een paar dagen voordat de api key vervalt. Dit was nodig omdat tweakers zijn inkomsten krijgt d.m.v. advertenties en je met een tweakers abbonement geen advertenties meer ziet.
De volgende dingen kan je nu opvragen met de api:
- Crew data (nog geen artikelen van een crew lid. Hier wordt nog aan gewerkt.)
- Basic user data
- Nieuws van een bepaalde datum
- Nieuws berichten

Dit is hoe je de api tot nu toe moet gebruiken:
Opvragen van crew informatie
URL: https://tweakers.marnixbouhuis.nl/crew/IDHIER/?apikey=x
IDHIER is hier de id van het crew lid. Deze kan je vinden in de url van de crew pagina, bijvoorbeeld voor de url 'https://tweakers.net/crew/296/' is het id 296. De 'x' vervang je door je api key.
Response
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| { "status":200, "message":"", "data":{ "name":"Naam hier", "image":"Url naar afbeelding hier of als er geen afbeelding is is deze waarde null", "numberOfArticles":"1234", "bio":[ "Oprichter en ontwerper\r", "Storage en domotica\r", "Heeft reviews geschreven van 20 ssd's" ], "userProfile":"hier staat het gebruikers id van het crew lid" } } |
Opvragen van gebruikers informatie
URL: https://tweakers.marnixbouhuis.nl/users/IDHIER/?apikey=x
IDHIER is hier de id van de gebruiker. Deze kan je vinden in de url van de gallery pagina, bijvoorbeeld voor de url 'https://tweakers.net/gallery/123456/' is het id 123456. De 'x' vervang je door je api key.
Response
Dit is een response voor de gebruiker met het id 1 (AKA Femme Taken)
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
| { "status":200, "message":"", "data":{ "name":"Femme", "image":"https://ic.tweakimg.net/usericons/1/femme.png", "registeredAt":"11 juni 1999", "lastModification":"29 november 2016.", "karma":"408K", "personalData":{ "Naam":"Femme Taken", "Geboortedatum":"17 augustus 1979", "Geslacht":"Man", "Woonplaats":"Bronckhorst", "Beroep":"Ontwerper & product-owner", "Opleiding":"ex-Interaction Design", "Homepage":"http://grootokhorst.nl" }, "socialMediaLinks":[ "https://www.linkedin.com/in/femme", "https://twitter.com/femmetaken", "http://people.icq.com/people/14484752" ] } } |
image kan een url bevatten naar de afbeelding of is null.
De personal data array is een array opgebouwd uit alle data uit de Persoonlijke gegevens tabel op het profiel (zonder de link naar het forum).
De social media links array bevat links naar de gene zijn social media accounts, deze array kan ook leeg zijn.
Opvragen van nieuws van een datum
URL: https://tweakers.marnixbouhuis.nl/news/date/DATUM/?apikey=x
DATUM is de datum van de nieuws berichten (als je 1 februari 2017 wil dat is de datum het volgende: 20170201). De 'x' vervang je door je api key.
Response
Dit is een response voor de datum 20170205 (5 februari 2017)
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
| { "status":200, "message":"", "data":{ "posts":[ "120911", "120907", "120913", "120905", "120909" ] } } |
De post array bevat de id's van de nieuwsberichten van die dag.
[b]Opvragen van een nieuwsbericht/b]
URL: https://tweakers.marnixbouhuis.nl/news/id/BERICHT/?apikey=x
BERICHT is de id van het nieuwsbericht, deze kan je krijgen door het nieuws op te vragen voor een dag of je kan de id ook verkrijgen door naar de url te kijken vaan een nieuwsbericht (voor de url nieuws: Rock Band VR komt op 23 maart uit voor Oculus Rift is het nieuwsbericht id 120959). De 'x' vervang je door je api key.
Response
Dit is een response voor het nieuwsbericht met een id van 120959
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| { "status":200, "message":"", "data":{ "title":"Rock Band VR komt op 23 maart uit voor Oculus Rift", "author":"296", "date":"2017-02-06T21:17:56+01:00", "related":[ "112505", "110673", "106642" ], "content":"<p class=\"lead\">Eigenaren van een Oculus Rift kunnen vanaf 23 maart Rock Band VR spelen, en inmiddels is het spel al te preorderen in combinatie met een gitaarcontroller. De virtual reality-game had aanvankelijk al vorig jaar uit moeten komen.</p><p>Dat heeft uitgever Harmonix <a title=\"twitter.com - Rock Band op Twitter\" href=\"https://twitter.com/RockBand/status/828649484447997952\" rel=\"external\">bekendgemaakt</a> via Twitter. Zelf verwijst het bedrijf naar Amazon voor het plaatsen van een bestelling, waarbij de game in combinatie met een gitaarcontroller kan worden aangeschaft. Overigens is het onduidelijk of de vr-versie van het gitaarspel op 23 maart ook direct in Nederland en België wordt uitgebracht.</p><p>Met de gitaarcontroller kan Rock Band VR worden gespeeld door deze op de pc aan te sluiten en de Oculus Rift op het hoofd te zetten. De bedoeling is dat er met de bril op naar het publiek kan worden gekeken terwijl er op de gitaar wordt gespeeld. Er is de keuze tussen een Xbox One-versie en een PlayStation 4-versie met betrekking tot de gitaarcontroller; het is namelijk mogelijk om het instrument in combinatie met Rock Band 4 te spelen op een van de twee consoles.</p><p>De vr-versie van Rock Band werd in december 2015 al <a title=\"Oculus onthult virtualrealityversie van Rock Band\" href=\"https://tweakers.net/nieuws/106642/oculus-onthult-virtualrealityversie-van-rock-band.html\" rel=\"external\">aangekondigd</a>. Veel details waren er destijds niet beschikbaar, maar toen werd al wel gesproken over een release in maart 2016. De game komt uiteindelijk dus ongeveer een jaar later uit dan aanvankelijk gepland.</p><p><img class=\"alignCenter\" src=\"https://ic.tweakimg.net/ext/i/imagenormal/2001254503.jpeg\" alt=\"Oculus draadloos\" width=\"620\" height=\"346\"></p>" } } |
Related bevat een array met nieuwsbericht id's die gerelateerd zijn aan dit nieuwsbericht.
Content bevat de html van het bericht.
Als een request goed behandeld is stuurt die altijd een 200 status code.
Als er iets mis gaat bevat 'message' altijd verdere uitleg over het probleem.
Als een request niet goed is dan stuurt die altijd een 400 status code.
Als je door je dagelijkse aantal requests heen bent dan stuurt die een 429 status code.
Als de api key niet goed is, stuurt die een 401 status code.
Als er intern wat fout gegaan is, dan stuurt die een 500 status code.
Het status variable en de http status code zijn ook altijd het zelfde.
Ik ben van plan om uiteindelijk ook de rest van de tweakers onderdelen te gaan implementeren.
Suggesties en bug reports zijn altijd welkom

- Marnix
[Voor 4% gewijzigd door marnixbouhuis op 07-02-2017 14:56. Reden: Ik moest helaas de api neerhalen van tweakers.]