Skip to main content

Web scraper for ETF data from fondsweb website.

Project description

fondsweb-scraper

This is a web scraper for ETF data from the Fondsweb website.

Fondsweb is a lesser known german website, that provides information about funds. Unlike its competitors, it offers the ability to sort funds by volatility, Sharpe ratio, costs, FWW and ISS ratings, etc.

But apart from an old Perl package Finance::Quote::Fondsweb there seems to be no other way to access Fondsweb data. This Python package is a new implementation that makes accessing the data from Fondsweb easier.

Usage

Install the package from PyPi

$ pip install fondsweb-scraper

To import do

>>> from fondsweb import fondsweb as fw

Get information about a single fund by its ISIN

>>> fw.get_fund("LU1834983477")
{'name': 'Amundi STOXX Europe 600 Banks UCITS ETF Acc',
'currency': 'EUR',
'costs': 0.3,
'fund_vol': 1520550000.0,
'per (EUR)': {0: 54.72, 1: 60.55, 3: 42.21, 5: 37.15},
'vol': {1: 16.1, 3: 19.01, 5: 23.43},
'sharpe': {1: 3.66, 3: 2.22, 5: 1.49}}

Search for all stock funds sorted by sharpe ratio of the last year

>>> response = fw.search_fondsweb(afocus=["Aktienfonds"], sort="Sharpe Ratio 1 Jahr")
https://www.fondsweb.com/de/suchen/afocus/2-123/sort/sharpe1j

It will print the url used for the search. You can then show the top10 results like

>>> for entry in response[:10]:
...     print(entry["sharpe"], entry["year_1"], entry["isin"], entry["name"])
... 
6.33 39.74 LI0181971842 ASPOMA Japan Opportunities Fund E
6.31 41.74 LI0393642439 ASPOMA Japan Opportunities Fund A
5.71 58.19 IE000YYE6WK5 VanEck Defense UCITS ETF USD A
5.32 71.47 IE000JCW3DZ3 Global X Defence Tech UCITS ETF USD thes.
4.73 63.91 LU0832413909 ALKEN FUND - European Opportunities US1
4.69 63.48 LU0866838492 ALKEN FUND - European Opportunities US2
4.65 63.44 LU0235308136 ALKEN FUND - European Opportunities H
4.65 63.36 LU0866838575 ALKEN FUND - European Opportunities EU1
4.63 63.13 LU0432793510 ALKEN FUND - European Opportunities Z
4.63 63.08 LU0235308482 ALKEN FUND - European Opportunities R

To retrieve time series information about a fund you first need to fetch some config data from the Fondsweb website.

config = fw.fetch_config()

The config object is the needed as parameter to access the time series data.

df = fw.get_fund_timeseries("IE00B4L5Y983", config=config)
print(df)
          date   value
0   2009-09-25  100.00
1   2009-09-28  101.24
2   2009-10-12  102.06
3   2009-10-26   99.74
4   2009-11-09  101.60
..         ...     ...
741 2025-10-24  660.64
742 2025-10-27  666.20
743 2025-10-28  667.90
744 2025-10-29  667.39
745 2025-10-30  665.80

The time series data is returned as a pandas DataFrame.

For more examples have a look at the jupyter notebooks in the notebooks directory.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fondsweb_scraper-0.1.1.tar.gz (13.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fondsweb_scraper-0.1.1-py3-none-any.whl (14.7 kB view details)

Uploaded Python 3

File details

Details for the file fondsweb_scraper-0.1.1.tar.gz.

File metadata

  • Download URL: fondsweb_scraper-0.1.1.tar.gz
  • Upload date:
  • Size: 13.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.7

File hashes

Hashes for fondsweb_scraper-0.1.1.tar.gz
Algorithm Hash digest
SHA256 aebbcb9c7aaf8a23abd92f58a32e258ea869a81dcafdf05dbadeef188af8fdc5
MD5 8ee4bf6bcadf8fd4a908a93f5086ae17
BLAKE2b-256 62799f4175672f32d914a13aa948a1e343b565779fb77eb1cb20a74b758c89de

See more details on using hashes here.

File details

Details for the file fondsweb_scraper-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for fondsweb_scraper-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a57d5459770948a7ccd10954444d78df560fcda991c2b701a206a98bef754822
MD5 5ec3af0a5f503dfc089f73c41b853da2
BLAKE2b-256 ba3ae39d32543f3e2f52bb3b7c27fac8a3430942669486d30336aa6623565d1a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page