{"id":27739,"library":"finmind","title":"FinMind","description":"FinMind is a Python library for mining financial data, primarily covering Taiwan stock, futures, and options markets. Version 1.9.10 provides datasets via API calls, with a focus on Taiwan market data. The library supports token-based authentication and offers a range of data retrieval methods. Release cadence is irregular, with frequent minor updates.","status":"active","version":"1.9.10","language":"python","source_language":"en","source_url":"https://github.com/FinMind/FinMind","tags":["finance","taiwan","stock-data","api"],"install":[{"cmd":"pip install finmind","lang":"bash","label":"Install FinMind"}],"dependencies":[{"reason":"HTTP requests to the FinMind API","package":"requests","optional":false},{"reason":"Data manipulation and DataFrame output","package":"pandas","optional":false}],"imports":[{"note":"FinData is in the database module, not top-level.","wrong":"from finmind import FinData","symbol":"FinData","correct":"from finmind.database import FinData"},{"note":"login_by_token is in the login module.","wrong":"from finmind import login_by_token","symbol":"login_by_token","correct":"from finmind.login import login_by_token"},{"note":"","wrong":"","symbol":"TaiwanStockInfo","correct":"from finmind.database import TaiwanStockInfo"}],"quickstart":{"code":"import pandas as pd\nfrom finmind.login import login_by_token\nfrom finmind.database import FinData\n\n# Login with token (get token from https://finmind.github.io/)\ntoken = 'YOUR_TOKEN_HERE'\nlogin_by_token(token)\n\n# Get Taiwan stock info\ndf = FinData('TaiwanStockInfo', token=token).data()\nprint(df.head())","lang":"python","description":"Log in with a token and fetch Taiwan stock information."},"warnings":[{"fix":"Use `from finmind.login import login_by_token` instead of `from finmind.login import login`.","message":"In version 1.9.3, the `login` function was removed. Only `login_by_token` is supported now.","severity":"breaking","affected_versions":">=1.9.3"},{"fix":"Ensure you include `token=your_token` when calling `FinData(...)`.","message":"Many datasets require a `token` parameter even after login. Always pass `token` to `FinData`.","severity":"gotcha","affected_versions":"all"},{"fix":"Monitor release notes; continue using `use_object=True` if needed.","message":"The `use_object` parameter for bulk downloads might be deprecated in future versions. Check docs for alternatives.","severity":"deprecated","affected_versions":">=1.9.10"}],"env_vars":null,"last_verified":"2026-05-09T00:00:00.000Z","next_check":"2026-08-07T00:00:00.000Z","problems":[{"fix":"Replace with `from finmind.login import login_by_token`.","cause":"The `login` function was removed in v1.9.3.","error":"ImportError: cannot import name 'login' from 'finmind.login'"},{"fix":"Verify your token is valid and the dataset name is correct (e.g., 'TaiwanStockInfo').","cause":"API response does not contain 'data' key, possibly due to invalid token or incorrect dataset name.","error":"KeyError: 'data'"},{"fix":"Ensure you called `login_by_token(token)` and passed `token` to `FinData`.","cause":"FinData object returned None, likely because login failed or token is missing.","error":"AttributeError: 'NoneType' object has no attribute 'data'"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}