Willhaben.at Car Scraper avatar

Willhaben.at Car Scraper

Try for free

1 day trial then $45.00/month - No credit card required now

View all Actors
Willhaben.at Car Scraper

Willhaben.at Car Scraper

real_spidery/willhaben-at-car-scraper
Try for free

1 day trial then $45.00/month - No credit card required now

Fast and lightweight Willhaben.at scraper allows you to deep dive in the largest Austria online car/real estate market for buyers and sellers. Export scraped data, run the scraper via API, schedule and monitor runs or integrate with other tools. Custom solution is available, just drop us an email

What does willhaben.at Scraper do?

Willhaben.at Scraper for cars allows you to scrape any cars from chosen urls from willhaben.at. Here are main functionalities:

  1. Extract all willhaben.at data from chosen urls
  2. Extract all willhaben.at data the last X days from now from chosen urls
  3. Extract any willhaben.at individual cars
  4. Export any willhaben.at data in many formats, also easy to integrate with your own external systems within minutes

Note: willhaben.at of each country domain hasn't been tested. If you have special request for a specific country, please let us know, we may help to test willhaben.at limitation: willhaben.at only allows to get maximum 20 search result pages, in case you need to scrape bigger amount, you may need to split the result into smaller chunk, use excel to generate URL if needed. We are working on the solution to scrape with bigger result, status will be updated here

Input

Full input sample:

1{
2"start_urls": [
3{
4"url": "https://www.willhaben.at/iad/gebrauchtwagen/auto/gebrauchtwagenboerse?rows=30"
5}
6],
7"scrape_page_limit": 1,
8"ad_detail_page_urls": "https://www.willhaben.at/iad/gebrauchtwagen/d/auto/audi-e-tron-55-quattro-95kwh-advanced-s-line-suv-gelaendewagen-867346418/"
9}
  • run_mode By default, test mode is enabled, for the real scraped, please select Production option (prod)

  • start_urlsshould be cars search page. i.e. https://www.willhaben.at/iad/gebrauchtwagen/auto/gebrauchtwagenboerse?rows=30.

  • scrape_page_limitif this data is set, only the first scrape_page_limit of start_urls will be scraped. To remove this limit, remove this scrape_page_limitfrom input

  • only_simple_result Only extract simple results, set to true, otherwise set to false or remove this field

  • ad_detail_page_urlsIf you just want to get only specific cars corresponding to provided urls, then setup value for this input, delimiter ","

  • proxy_settings To avoid getting blocked, setup proxy for running scraper, delimiter ",". i.e. http://username:password@hostname:port,http://auto:apify_proxy_EaAFg6CFhc4eKk54Q1HbGDEiUTrk480uZv03@proxy.apify.com:8000

Note: It's IMPORTANT to setup proxy to avoid getting blocked by willhaben.at. You can use any proxy service, but I would recommend Packetstream for their pricing and quality. Use my link for both to get bonus https://packetstream.io/?psr=5xWZ

Output

Output sample for full data

1{
2	"id": "1652122456",
3	"url": "https://www.willhaben.at/iad/gebrauchtwagen/d/auto/vw-caravelle-startline-2-0-tdi-bmt-1652122456/",
4	"publishedAt": "2024-08-26T20:20:00+0200",
5	"updatedAt": "2024-08-26T20:20:00+0200",
6	"description": "VW Caravelle Startline 2,0 TDI BMT Kleinbus",
7	"photos": [
8		"https://cache.willhaben.at/mmo/6/165/212/2456_-1069353528.jpg",
9		"https://cache.willhaben.at/mmo/6/165/212/2456_1018948785.jpg",
10		"https://cache.willhaben.at/mmo/6/165/212/2456_1026751160.jpg",
11		"https://cache.willhaben.at/mmo/6/165/212/2456_-1944915611.jpg",
12		"https://cache.willhaben.at/mmo/6/165/212/2456_-1728842823.jpg",
13		"https://cache.willhaben.at/mmo/6/165/212/2456_1287845118.jpg",
14		"https://cache.willhaben.at/mmo/6/165/212/2456_439875144.jpg",
15		"https://cache.willhaben.at/mmo/6/165/212/2456_2022900183.jpg",
16		"https://cache.willhaben.at/mmo/6/165/212/2456_1383986580.jpg",
17		"https://cache.willhaben.at/mmo/6/165/212/2456_-1497694877.jpg",
18		"https://cache.willhaben.at/mmo/6/165/212/2456_-1328746592.jpg",
19		"https://cache.willhaben.at/mmo/6/165/212/2456_1125248675.jpg",
20		"https://cache.willhaben.at/mmo/6/165/212/2456_-134680168.jpg",
21		"https://cache.willhaben.at/mmo/6/165/212/2456_1510534871.jpg",
22		"https://cache.willhaben.at/mmo/6/165/212/2456_-1192889412.jpg",
23		"https://cache.willhaben.at/mmo/6/165/212/2456_-14420135.jpg"
24	],
25	"highlight": [
26		{
27			"prefix": null,
28			"value": "12/2014",
29			"postfix": "EZ"
30		},
31		{
32			"prefix": null,
33			"value": "199.900",
34			"postfix": "km"
35		},
36		{
37			"prefix": null,
38			"value": "114",
39			"postfix": "PS (84 kW)"
40		}
41	],
42	"attributes": {
43		"attribute": [
44			{
45				"name": "CONDITION_REPORT",
46				"values": [
47					"Ja"
48				]
49			},
50			{
51				"name": "CAR_MODEL/MAKE",
52				"values": [
53					"VW"
54				]
55			},
56			{
57				"name": "MOTOR_CONDITION",
58				"values": [
59					"Gebrauchtwagen"
60				]
61			},
62			{
63				"name": "MOTOR_PRICE/TOTAL",
64				"values": [
65					"17700"
66				]
67			},
68			{
69				"name": "EQUIPMENT",
70				"values": [
71					"ABS",
72					"Anhängerkupplung",
73					"Antriebsschlupfregelung (ASR)",
74					"Beifahrerairbags",
75					"Bluetooth / USB",
76					"Bordcomputer",
77					"CD Player",
78					"Dachgepäckträger",
79					"Einparkhilfe",
80					"elektr. Fensterheber",
81					"elektr. Spiegel",
82					"Fahrerairbag",
83					"Freisprecheinrichtung",
84					"ISOFIX",
85					"Klimaanlage",
86					"Klimaautomatik",
87					"Nichtraucherfahrzeug",
88					"Parksensor hinten",
89					"Radio",
90					"Reifendrucksensor",
91					"Servicegepflegt",
92					"Servolenkung",
93					"Stabilitätsprogramme (ESP)",
94					"Tagfahrlicht",
95					"Tempomat",
96					"Zentralverriegelung"
97				]
98			},
99			{
100				"name": "DESCRIPTION",
101				"values": [
102					"<p>T5 Caravelle KR zu verkaufen.</p><p>114PS Diesel</p><p>Fahrzeug wird gefahren somit ändert sich der Km-Stand</p><p><br></p><p>•Zweimassenschwung + Kupplung NEU bei 185.000km</p><p>• alle Service gemacht</p><p>• Bremsen inkl Scheiben NEU bei 185.000km Sep/2023</p><p>• Batterie NEU bei 179.000km Juli/2023</p><p>• Glühkerzen bei 163.000km</p><p><br></p><p>Schiebetür wurde ausgetauscht - Versicherungsschaden</p><p>bei 91.000km Dez/2019</p><p><br></p><p>Bitte um Verständnis- Nur erstgemeinte & realistische Anfragen werden beantwortet !</p><p><br></p>"
103				]
104			},
105			{
106				"name": "CAR_TYPE",
107				"values": [
108					"Kleinbus"
109				]
110			},
111			{
112				"name": "NO_OF_OWNERS",
113				"values": [
114					"2"
115				]
116			},
117			{
118				"name": "CONDITION_REPORT_VALID_UNTIL",
119				"values": [
120					"12.2024"
121				]
122			},
123			{
124				"name": "TRANSMISSION",
125				"values": [
126					"Schaltgetriebe"
127				]
128			},
129			{
130				"name": "MILEAGE",
131				"values": [
132					"199900"
133				]
134			},
135			{
136				"name": "YEAR_MODEL_MONTH",
137				"values": [
138					"12"
139				]
140			},
141			{
142				"name": "NO_OF_DOORS",
143				"values": [
144					"4"
145				]
146			},
147			{
148				"name": "CAR_MODEL/MODEL",
149				"values": [
150					"Caravelle"
151				]
152			},
153			{
154				"name": "CAR_MODEL/MODEL_SPECIFICATION",
155				"values": [
156					"Caravelle Startline 2,0 TDI BMT"
157				]
158			},
159			{
160				"name": "ENGINE/EFFECT",
161				"values": [
162					"84"
163				]
164			},
165			{
166				"name": "ENGINE/FUEL",
167				"values": [
168					"Diesel"
169				]
170			},
171			{
172				"name": "NO_OF_SEATS",
173				"values": [
174					"9"
175				]
176			},
177			{
178				"name": "WHEEL_DRIVE",
179				"values": [
180					"Vorderrad"
181				]
182			},
183			{
184				"name": "EXTERIOR_COLOUR_MAIN",
185				"values": [
186					"Weiß"
187				]
188			},
189			{
190				"name": "YEAR_MODEL",
191				"values": [
192					"2014"
193				]
194			},
195			{
196				"name": "PRICE",
197				"values": [
198					"17700"
199				]
200			},
201			{
202				"name": "PRICE_FOR_DISPLAY",
203				"values": [
204					"€ 17.700"
205				]
206			},
207			{
208				"name": "AREA_ID",
209				"values": [
210					"113361"
211				]
212			},
213			{
214				"name": "REGION_AREA_ID",
215				"values": [
216					"418"
217				]
218			},
219			{
220				"name": "LOCATION/ADDRESS_2",
221				"values": [
222					"Krenglbach"
223				]
224			},
225			{
226				"name": "LOCATION/ADDRESS_3",
227				"values": [
228					"Wels-Land"
229				]
230			},
231			{
232				"name": "LOCATION/ADDRESS_4",
233				"values": [
234					"Oberösterreich"
235				]
236			},
237			{
238				"name": "COORDINATES",
239				"values": [
240					"48.20583,13.95643"
241				]
242			},
243			{
244				"name": "SHOW_MAP",
245				"values": [
246					"false"
247				]
248			},
249			{
250				"name": "VEHICLE_TYPE",
251				"values": [
252					"PKW"
253				]
254			},
255			{
256				"name": "ISPRIVATE",
257				"values": [
258					"1"
259				]
260			},
261			{
262				"name": "DEALER",
263				"values": [
264					"0"
265				]
266			},
267			{
268				"name": "ORG_TYPE",
269				"values": [
270					"2"
271				]
272			}
273		]
274	},
275	"seller": {
276		"organizationData": {
277			"id": 25868551,
278			"uuid": "ea1c6e7a-8ff1-4294-85aa-c82a3667e9e5",
279			"partnerId": "mp_25868551",
280			"description": "Organisation details",
281			"organisationDetailLinkList": {
282				"contextLink": [
283					{
284						"id": "seller.profile",
285						"description": "25868551",
286						"uri": "https://api.willhaben.at/restapi/v2/sellerprofile/25868551/3/profile",
287						"selected": false,
288						"relativePath": "/sellerprofile/25868551/3/profile",
289						"serviceName": "iad"
290					},
291					{
292						"id": "organisation.furtherAds",
293						"description": "25868551",
294						"uri": "https://api.willhaben.at/restapi/v2/search/atz/3/402?orgId=25868551",
295						"selected": false,
296						"relativePath": "/search/atz/3/402?orgId=25868551",
297						"serviceName": "iad"
298					}
299				]
300			},
301			"orgName": null,
302			"orgPhone": null,
303			"orgEmail": "",
304			"orgLogoUrl": null,
305			"addressLines": {
306				"value": []
307			},
308			"postCode": null,
309			"country": null,
310			"countryId": -141,
311			"openingHours": {
312				"openingHoursByGroup": []
313			}
314		},
315		"sellerProfileUserData": {
316			"name": "P. A.",
317			"registerDate": "2016-12-17T00:00:00+0100",
318			"location": "4100 Ottensheim",
319			"street": " ",
320			"district": null,
321			"orgUUID": null,
322			"pictureUrl": "https://cache.willhaben.at/mmo/userProfile/25868551_cfbed57db8c7f8c99f905bdd4f7fa1dc.jpg",
323			"hasProfileImage": true,
324			"activeAdCount": 1,
325			"private": true
326		},
327		"advertAddressDetails": {
328			"addressLines": {
329				"value": [
330					"Krenglbach",
331					"Wels-Land",
332					"Oberösterreich"
333				]
334			},
335			"postCode": "4631",
336			"postalName": "Krenglbach",
337			"country": "Österreich",
338			"province": "Oberösterreich",
339			"district": "Wels-Land"
340		}
341	}
342}

Output sample for simple data

1{
2  "id": "1654277607",
3  "url": "https://www.willhaben.at/iad/gebrauchtwagen/d/auto/bmw-5er-reihe-525d-xdrive-1654277607/",
4  "description": "BMW 5er-Reihe 525d xdrive",
5  "photos": [
6    "https://cache.willhaben.at/mmo/7/165/427/7607_1988883143.jpg",
7    "https://cache.willhaben.at/mmo/7/165/427/7607_-2021590471.jpg",
8    "https://cache.willhaben.at/mmo/7/165/427/7607_-804916147.jpg"
9  ],
10  "highlight": [
11    {
12      "prefix": null,
13      "value": "2009",
14      "postfix": "EZ"
15    },
16    {
17      "prefix": null,
18      "value": "352.000",
19      "postfix": "km"
20    },
21    {
22      "prefix": null,
23      "value": "197",
24      "postfix": "PS (145 kW)"
25    }
26  ],
27  "attributes": {
28    "attribute": [
29      {
30        "name": "BODY_DYN",
31        "values": [
32          "Seit 2013 in meinem Besitz. Es wurde immer alles fachgerecht repariert, das Auto ist also in gutem Zustand und nach wie vor angemeldet. Er steht entweder in Schrems (3943) oder in Wien. Reifen neu, Batterie neu, Stoßdämpfer und Federn vorne neu etc."
33        ]
34      },
35      {
36        "name": "CONDITION_REPORT",
37        "values": ["1"]
38      },
39      {
40        "name": "MOTOR_PRICE_BONUS/TRADE_IN",
41        "values": ["false"]
42      },
43      {
44        "name": "MILEAGE",
45        "values": ["352000"]
46      },
47      {
48        "name": "CAR_MODEL/MAKE",
49        "values": ["BMW"]
50      },
51      {
52        "name": "ORG_UUID",
53        "values": ["adef4342-a857-4d3e-a4c4-c82a3667e9e5"]
54      },
55      {
56        "name": "PUBLISHED",
57        "values": ["1724709600000"]
58      },
59      {
60        "name": "COUNTRY",
61        "values": ["Österreich"]
62      },
63      {
64        "name": "CAR_MODEL/MODEL",
65        "values": ["5er-Reihe"]
66      },
67      {
68        "name": "CAR_MODEL/MODEL_SPECIFICATION",
69        "values": ["525d xdrive"]
70      },
71      {
72        "name": "PRICE/AMOUNT",
73        "values": ["4900.0"]
74      },
75      {
76        "name": "AUTDEALER",
77        "values": ["0"]
78      },
79      {
80        "name": "NOOFSEATS",
81        "values": ["5"]
82      },
83      {
84        "name": "ADTYPE_ID",
85        "values": ["20"]
86      },
87      {
88        "name": "ORGID",
89        "values": ["22116374"]
90      },
91      {
92        "name": "SEO_URL",
93        "values": [
94          "gebrauchtwagen/d/auto/bmw-5er-reihe-525d-xdrive-1654277607/"
95        ]
96      },
97      {
98        "name": "PUBLISHED_String",
99        "values": ["2024-08-27T00:00:00Z"]
100      },
101      {
102        "name": "ENGINE/EFFECT",
103        "values": ["145"]
104      },
105      {
106        "name": "MMO",
107        "values": ["7/165/427/7607_1988883143.jpg"]
108      },
109      {
110        "name": "ENGINE/FUEL",
111        "values": ["100003"]
112      },
113      {
114        "name": "AD_UUID",
115        "values": ["b44b60fe-d2c7-4e38-8b2e-a6ca8aa3da02"]
116      },
117      {
118        "name": "SOURCE",
119        "values": ["11"]
120      },
121      {
122        "name": "CONDITION",
123        "values": ["20"]
124      },
125      {
126        "name": "COORDINATES",
127        "values": ["48.191558837890625,16.370309829711914"]
128      },
129      {
130        "name": "LOCATION",
131        "values": ["Wien, 04. Bezirk, Wieden"]
132      },
133      {
134        "name": "POSTCODE",
135        "values": ["1040"]
136      },
137      {
138        "name": "STATE",
139        "values": ["Wien"]
140      },
141      {
142        "name": "fnmmocount",
143        "values": ["13"]
144      },
145      {
146        "name": "EQUIPMENT",
147        "values": [
148          "45;24;68;69;26;28;110;111;114;116;117;71;94;72;95;74;97;75;98;11;99;77;12;34;38;19;101;2;102;5;104;6;8;9;81;40;42;43"
149        ]
150      },
151      {
152        "name": "DISTRICT",
153        "values": ["Wien"]
154      },
155      {
156        "name": "HEADING",
157        "values": ["BMW 5er-Reihe 525d xdrive"]
158      },
159      {
160        "name": "CAR_TYPE",
161        "values": ["Kombi / Family Van"]
162      },
163      {
164        "name": "NO_OF_OWNERS",
165        "values": ["2"]
166      },
167      {
168        "name": "ADID",
169        "values": ["1654277607"]
170      },
171      {
172        "name": "EXTERIORCOLOURMAIN",
173        "values": ["5"]
174      },
175      {
176        "name": "YEAR_MODEL",
177        "values": ["2009"]
178      },
179      {
180        "name": "ALL_IMAGE_URLS",
181        "values": [
182          "7/165/427/7607_1988883143.jpg;7/165/427/7607_-2021590471.jpg;7/165/427/7607_-804916147.jpg;7/165/427/7607_-1670187090.jpg;7/165/427/7607_-742718496.jpg;7/165/427/7607_1895627441.jpg;7/165/427/7607_230487104.jpg;7/165/427/7607_1084489604.jpg;7/165/427/7607_-1730086046.jpg;7/165/427/7607_-874710057.jpg;7/165/427/7607_714075728.jpg;7/165/427/7607_-344525796.jpg;7/165/427/7607_-580782597.jpg"
183        ]
184      },
185      {
186        "name": "ISPRIVATE",
187        "values": ["1"]
188      },
189      {
190        "name": "MOTOR_PRICE_BONUS/FINANCE",
191        "values": ["false"]
192      },
193      {
194        "name": "PRODUCT_ID",
195        "values": ["5231"]
196      },
197      {
198        "name": "TRANSMISSION",
199        "values": ["180004"]
200      },
201      {
202        "name": "WARRANTY",
203        "values": ["-1"]
204      },
205      {
206        "name": "PRICE",
207        "values": ["4900"]
208      },
209      {
210        "name": "PRICE_FOR_DISPLAY",
211        "values": ["€ 4.900"]
212      },
213      {
214        "name": "LAST_UPDATED",
215        "values": ["1724709593000"]
216      },
217      {
218        "name": "ENGINE/FUEL_RESOLVED",
219        "values": ["Diesel"]
220      },
221      {
222        "name": "TRANSMISSION_RESOLVED",
223        "values": ["Automatik"]
224      },
225      {
226        "name": "CONDITION_RESOLVED",
227        "values": ["Gebrauchtwagen"]
228      },
229      {
230        "name": "EQUIPMENT_RESOLVED",
231        "values": [
232          "Regensensor",
233          "Fahrerairbag",
234          "Nebelscheinwerfer",
235          "Leichtmetall-/Alufelgen",
236          "Antriebsschlupfregelung (ASR)",
237          "CD Player",
238          "Nichtraucherfahrzeug",
239          "Mittelarmlehne",
240          "Lederlenkrad",
241          "Kurvenfahrlicht",
242          "Kopfairbags",
243          "Schisack",
244          "Multifunktionslenkrad",
245          "elektr. Sitze",
246          "Lichtsensor",
247          "Parksensor hinten",
248          "ISOFIX",
249          "Beifahrerairbags",
250          "Head-Up-Display",
251          "Tempomat",
252          "Bluetooth / USB",
253          "Stabilitätsprogramme (ESP)",
254          "Lederausstattung",
255          "Radio",
256          "Klimaautomatik",
257          "elektr. Spiegel",
258          "Dachreling",
259          "Servolenkung",
260          "Parksensor vorne & hinten",
261          "ABS",
262          "Tagfahrlicht",
263          "elektr. Fensterheber",
264          "Zentralverriegelung",
265          "Klimaanlage",
266          "Reifendrucksensor",
267          "Navigationssystem",
268          "Bordcomputer",
269          "Xenon"
270        ]
271      },
272      {
273        "name": "WARRANTY_RESOLVED",
274        "values": ["Nein"]
275      }
276    ]
277  },
278  "seller": {
279    "type": "Privat",
280    "iconType": "NONE",
281    "upsellingOrgLogo": null
282  }
283}

Delisting ads

  • First solution: This feature requires to run full scraped. If the ads don't appear in the last full scraped run, then those ads have been delisted.
  • Second solution: Use input ad_detail_page_urls to check if ads has been delisted
1{
2	"external_url": "https://www.willhaben.at/iad/gebrauchtwagen/d/auto/audi-e-tron-55-quattro-95kwh-advanced-s-line-suv-gelaendewagen-867346418/",
3	"is_delisted": true
4}

Support

If this ready made scraper does not match your need (input, output, pricing) or you get any issue or you need to scrape other websites, please contact us at: realspidery@gmail.com or on X: realspidery

Developer
Maintained by Community
Actor metrics
  • 2 monthly users
  • 1 star
  • 100.0% runs succeeded
  • Created in Sep 2024
  • Modified 12 days ago