2017-12-26

機械学習の学習をipython notebookで行うとパソコンがフリーズする。

Jupyter Notebookで学習をするとパソコンがフリーズしていたが、terminalで実行するようにしたら、動いた。ソースコードを.ipynbから.pyに書き換える手間はかかる。





 Dellの約五万円のパソコン。Pythonのversionは3.5.1。ブラウザはFirefox。

   description: Computer
    width: 64 bits
    capabilities: vsyscall32
  *-core
       description: Motherboard
       physical id: 0
     *-memory
          description: System memory
          physical id: 0
          size: 3847MiB
     *-cpu
          product: Intel(R) Pentium(R) CPU  N3710  @ 1.60GHz
          vendor: Intel Corp.
          physical id: 1
          bus info: cpu@0
          size: 2560MHz
          width: 64 bits

Install opencv in pyenv-virtualenv

Article below helped me a lot. You need create symlink by "ln -s" to cv2.so
http://ensekitt.hatenablog.com/entry/2016/12/28/020813

2017-11-08

Amazon Product Advertisement API ItemSearch with BeautifulSoup4 and lxml in Python3.x

aws
In [ ]:
import requests
import hmac
import hashlib
import base64
import datetime
import urllib
from bs4 import BeautifulSoup
In [ ]:
access_key = 'xxx' # https://console.aws.amazon.com/iam/home?rw_useCurrentProtocol=1#/security_credential
secret_key = 'xxx'

endpoint = 'http://webservices.amazon.co.jp/onca/xml?'
ts = datetime.datetime.utcnow().strftime('%Y-%m-%dT%H:%M:%SZ')

params = {'Service': 'AWSECommerceService',
    'AWSAccessKeyId': access_key,
    'AssociateTag': 'asterisk37n-22',
    'Operation': 'ItemSearch',
    'SearchIndex': 'Apparel', # SearchIndex parameter does not work. Result depends only on BrowseNode
    'BrowseNode': '2128134051',
    'ResponseGroup': 'Images,ItemAttributes,Offers,SalesRank,Reviews',
    'Version': '2013-08-01'}
parsed_url_params = urllib.parse.urlencode(sorted(params.items()))

params.update({'Timestamp': ts})
parsed_canonical_params = urllib.parse.urlencode(sorted(params.items()))

canonical_string = '''GET
webservices.amazon.co.jp
/onca/xml
''' + parsed_canonical_params

dig = hmac.new(secret_key.encode('utf-8'), msg=canonical_string.encode('utf-8'), digestmod=hashlib.sha256).digest()
code = base64.b64encode(dig).decode()      # py3k-mode
encoded_signature = urllib.parse.quote(code)

url = endpoint + parsed_url_params + '&Timestamp=' + urllib.parse.quote(ts) + '&Signature=' + encoded_signature
res = requests.get(url)
html_source = res.text
In [ ]:
bs = BeautifulSoup(html_source, 'xml')
items = bs.findAll('item') # lxml is case sensitive
for item in items:
    print(item.ASIN)

飲食店への商品持ち込みを批判する人への反論

持ち込み商品の反対意見について反反論がある。持ち込み商品については、それはマナー違反だからと言う人が多い。商品を持ち込んでいる客がいると、注意したところでバイト代の上がらないバイト、給料の上がらない正社員は注意をし、さらに周りの客でも注意をする人がいる。彼らにその理由を聞くと、「...