Comments (11)
a quick workaround is explicitly stating the encoding as being utf-8 in corpus.py line 37 i.e. change
with open(self.datadir+category+'.txt') as fin:
to
with open(self.datadir+category+'.txt', encoding='utf-8') as fin:
although this only works with python 3 (with py2 you'd need to use codecs)
from sacremoses.
Interesting, Windows is reading it as cp1252 instead of utf8. Are you using Python 3 or 2?
from sacremoses.
3.6
from sacremoses.
Very interesting now!
Looks like an upsteam bug/feature in CPython vs Windows... https://stackoverflow.com/questions/42070668/python-3-default-encoding-cp1252
My suggestion is to set the proper locale before the Python interpreter.
If you're on cygwin: https://stackoverflow.com/questions/24255407/permanently-set-python-path-for-anaconda-within-cygwin
If natively and globally on windows, see https://www.java.com/en/download/help/locale.xml
from sacremoses.
BTW, do you get the same when you import nltk
?
from sacremoses.
I have the same issue. But not when importing nltk
from sacremoses.
Are you using Windows too?
from sacremoses.
Yes, Windows 10. Python 3.6.5
from sacremoses.
@lukedorney Hmmm.. It's weird that in Python3 the default encoding is already utf8 but Windows is doing something strange in the locale such that it's not the default.
from sacremoses.
@lukedorney @janwendt @sleighsoft I've added the patch and updated the package.
Please tell me if you still face the same problems after
pip install -U sacremoses
from sacremoses.
Going to close this issue. If there's any error in Windows from encoding problems again, please feel free to reopen this issue.
from sacremoses.
Related Issues (20)
- Bug: normalize prints extra newline HOT 1
- Is this normal to tokenize "His number is No.123." to ['His', 'number', 'is', 'No.123.']. Should it be ['His', 'number', 'is', 'No.123', '.']?
- bug report
- Truecaser seems do not process sentences beginning with quotation marks
- update release on github
- No detokenize_penn?
- can't tokenise the period properly
- deep detokenizer
- Chinese full stop “。” can't be split. HOT 1
- Trying to get in touch regarding a security issue HOT 2
- Is there a way to use sacremoses in java? HOT 1
- Cache downloaded tokenizer files HOT 1
- Which of the 100 languages used in mBERT are not supported by this tokenizer? HOT 1
- distutils is deprecated in Python 3.10 HOT 1
- New release? HOT 4
- Error with CLI `tokenize` using `click==8.1.3` HOT 10
- Is this package multi-threaded? HOT 1
- [Question] Why is <unk> token tokenized into 3 items? HOT 1
- Quiet flag has no effect on the detokenizer HOT 1
- add citation HOT 5
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 sacremoses.