はてなキーワード: win64とは
こんます~
2023年も残すところわずかとなりましたが、皆様方におかれましてはいかがお過ごしでしょうか。
一年間の振り返りなどはされましたでしょうか。
2423件の日記を綴っており、
頂いた総ブクマ数は1893、総トラバ数は1060となりました。
本年も大変お世話になりました。
最期に、ポンコツの私がChatGPTの手となり足となり作成した増田集計コードを掲載します。
各日記のURL、タイトル、投稿日時、文字数、被ブクマ数、被トラバ数を取得しCSVファイルに出力するものです。
お暇な方はお使いください。
それではよいお年をお迎えください。
import requests from bs4 import BeautifulSoup import time import csv import os import re # ログインURL login_url = 'https://hatelabo.jp/login' # ログイン情報 login_data = { 'key': 'あなたのユーザ名またはメールアドレス', 'password': 'あなたのパスワード', 'mode': 'enter' } user_name = 'あなたのユーザ名' # User-Agent ヘッダー(例:Google Chrome) headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3' } # セッションを開始 session = requests.Session() # ログイン response = session.post(login_url, data=login_data, headers=headers) print('login',response.status_code) # 集計データ item = { 'url': '', # URL 'title': '', # タイトル 'datetime': '', # 投稿日時 'characters': '', # 文字数 'bookmark': '', # 被ブクマ数 'trackback': '', # 被トラバ数 } # CSVファイル名 output_file = 'masuda_output.csv' # CSVファイルが存在しない場合はヘッダーを書き込む if not os.path.exists(output_file): with open(output_file, 'w', newline='', encoding='utf-8') as file: writer = csv.DictWriter(file, fieldnames=item.keys()) writer.writeheader() # 集計 page_start = 1 page_end = 3 for i in range(page_start, page_end+1): # 待機 time.sleep(3) # 増田一覧取得 page = session.get(f'https://anond.hatelabo.jp/{user_name}/?page={i}') print(page.url) # 応答のHTMLをBeautifulSoupで解析 soup = BeautifulSoup(page.content, 'html.parser') entries = soup.find_all('div', class_='section') for entry in entries: header = entry.find('h3') timestamp = header.find('a').get('href')[1:] item['url'] = 'https://anond.hatelabo.jp/'+timestamp item['title'] = header.get_text()[:-1] item['datetime'] = f"{timestamp[0:4]}/{timestamp[4:6]}/{timestamp[6:8]} {timestamp[8:10]}:{timestamp[10:12]}" footersection_text = entry.find_all('p')[-2].get_text() item['characters'] = len(entry.find('p').get_text().strip(footersection_text)) item['trackback'] = int(re.search(r'92;((.*?)92;)', footersection_text).group(1) if re.search(r'92;((.*?)92;)', footersection_text) else '') if item['title'] == '■': item['title'] = entry.find('p').get_text().strip(footersection_text)[:35] # 待機 time.sleep(3) bookmark_page = session.get(f'https://b.hatena.ne.jp/entry/button/?url=https%3A%2F%2Fanond.hatelabo.jp%2F{timestamp}&layout=basic-label-counter&lang=ja') soup_b = BeautifulSoup(bookmark_page.content, 'html.parser') item['bookmark'] = int(soup_b.find('a', class_='count').get_text()) # CSVファイルに追記 with open(output_file, 'a', newline='', encoding='utf-8') as file: writer = csv.DictWriter(file, fieldnames=item.keys()) writer.writerow(item)
(追記)
わー。ごめんなさい。文字が何か所か変わっていました。
92; → \
一応しらべた
https://www.rdkit.org/docs_jp/Installation_jp.html
[Windows]
[Prerequisites]
3.6+ (http://www.python.org/)
numpy (http://numpy.scipy.org/ あるいはpip install numpy)。 win64用のバイナリはここで手に入る: http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy
Pillow:(https://python-pillow.github.io/> あるいはpip install Pillow)
オススメの追加項目
[Recommeded extras]
aggdraw:Pythonで高画質の描画を行うためのライブラリ。ダウンロードの方法はこちら: http://effbot.org/zone/aggdraw-index.htm 新しい描画コード(2008年5月時点)はaggdraw v1.2a3 でテストした。alpha labelにも関わらず、コードは安定していてかつ機能する。
matplotlib: Pythonから科学的なプロットを作成するためのライブラリ。 http://matplotlib.sourceforge.net/
ipython : Python(とそれ以上に多くのこと)のためのとても役に立つインタラクティブなシェル http://ipython.scipy.org/dist/
win32all: PythonのためのWindowsの拡張 http://sourceforge.net/projects/pywin32/
なんのためのものかわからんがシミュレーションソフトとかで動作が早くないとこまるの?
とにかくアドビ系でもシミュ系がサクサク動いてなんぼのソフトは
なんでもグラフィックメモリをつかっていてCPUはその補助みたいになっとる
たぶんそれだと
20万以上する「ゲーミングパソコン」をつくもあたりで買ってこい。以上
アマゾン(compute.amazonaws.com)による大量の不正クリックで頭を悩ませているアフィリエイトサイト運営者(まとめでもキュレーションでもない)は多いことだろう。
ASPのV社によると、これは「提携媒体様のサイト表記等のチェック」名目でのアクセスとのことだが、オーガニック検索で辿り着けるページだけでなく、広告出稿ページにまで広告経由で大量にやって来るから頭が痛い。しかも、課金されやすいように分単位、ときには秒単位でユーザーエージェントやホストを変更し、ひたすら同じ広告をクリックし続ける。リファラーなど一切ない。
例えば、このような具合である(サイトに関わる部分は*****にさせてもらった)。
ec2-52-198-49-221.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:05:15 +0900] ***** "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36"
ec2-52-198-49-221.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:05:25 +0900] ***** "-" "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)"
ec2-52-198-222-214.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:05:35 +0900] ***** "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.118 Safari/537.36"
ec2-52-198-169-39.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:05:44 +0900] ***** "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.118 Safari/537.36"
ec2-52-197-86-194.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:05:45 +0900] ***** "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.73 Safari/537.36 OPR/34.0.2036.25"
ec2-52-199-76-193.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:06:26 +0900] ***** "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.73 Safari/537.36 OPR/34.0.2036.25"
ec2-52-69-168-106.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:06:30 +0900] ***** "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.73 Safari/537.36 OPR/34.0.2036.25"
ec2-52-69-168-106.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:06:32 +0900] ***** "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.118 Safari/537.36"
ec2-52-199-85-63.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:06:38 +0900] ***** "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.78.2 (KHTML, like Gecko) Version/7.0.6 Safari/537.78.2"
ec2-52-198-49-221.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:06:39 +0900] ***** "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:32.0) Gecko/20100101 Firefox/32.0"
ec2-52-198-49-221.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:06:39 +0900] ***** "-" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Win64; x64; Trident/6.0)"
ec2-52-198-49-221.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:07:06 +0900] ***** "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36"
ec2-52-68-194-244.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:07:17 +0900] ***** "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.118 Safari/537.36"
ec2-52-198-243-110.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:08:11 +0900] ***** "-" "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)"
ec2-52-198-243-110.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:08:25 +0900] ***** "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:32.0) Gecko/20100101 Firefox/32.0"
ec2-52-196-112-20.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:08:48 +0900] ***** "-" "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)"
ec2-52-193-171-45.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:08:54 +0900] ***** "-" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:37.0) Gecko/20100101 Firefox/37.0"
ec2-52-198-169-39.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:08:58 +0900] ***** "-" "Mozilla/5.0 (X11; Linux x86_64; rv:43.0) Gecko/20100101 Firefox/43.0"
ec2-52-198-169-39.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:09:02 +0900] ***** "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.78.2 (KHTML, like Gecko) Version/7.0.6 Safari/537.78.2"
ec2-52-192-198-30.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:09:04 +0900] ***** "-" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Win64; x64; Trident/6.0)"
ec2-52-193-171-45.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:09:40 +0900] ***** "-" "Mozilla/5.0 (Windows NT 6.1; Win64; x64; Trident/7.0; rv:11.0) like Gecko"
ec2-52-197-156-176.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:09:46 +0900] ***** "-" "Mozilla/5.0 (Windows NT 6.1; Win64; x64; Trident/7.0; rv:11.0) like Gecko"
ec2-52-196-112-20.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:10:16 +0900] ***** "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.73 Safari/537.36 OPR/34.0.2036.25"
ec2-52-199-44-248.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:10:25 +0900] ***** "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.78.2 (KHTML, like Gecko) Version/7.0.6 Safari/537.78.2"
ec2-52-69-168-106.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:10:32 +0900] ***** "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.118 Safari/537.36"
ec2-52-199-85-63.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:10:52 +0900] ***** "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.73 Safari/537.36 OPR/34.0.2036.25"
ec2-52-199-44-248.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:11:08 +0900] ***** "-" "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)"
ec2-52-68-45-242.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:11:08 +0900] ***** "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.73 Safari/537.36 OPR/34.0.2036.25"
ec2-52-69-169-154.ap-northeast-1.compute.amazonaws.com - - [14/Nov/2016:06:11:26 +0900] ***** "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.118 Safari/537.36"
1日でクリックされる広告は多いときで2,000件を超え、ヤフーリスティング広告管理画面の「無効なクリック数」にはたった1日で1,000件を超える無効クリックが計上される始末だ。残念ながらヤフーのシステムでもすべてのamazonaws.comを無効にできず、クリック調査を依頼してわずかながら返金されるも、アマゾンによる不正クリックは数多くが課金計上され、支払っている。
この現状に気づいていないアフィリエイトサイト運営者も多いことだろう。たとえば商標で出稿するなどクライアントのガイドラインに違反している広告であればどんどんクリックしてもらって結構だし、むしろそのようなサイトは不正クリックで是非潰して欲しいところでもある。
だが、普通に出稿している広告にこのような異常なクリックをされるとたまったものではない。
amazonaws.comの地域属性はアメリカなので、では都道府県単位で限定出稿しても、普通に変わらず大量に不正クリックされる。
広告を引っ込めるわけにもいかないから狙われないようにキーワードを絞り込もうとするも、管理画面でクリックされた検索クエリーを確認すると、それはもう満遍なく不正クリックされている。
提携媒体のサイト表記チェック名目にしては数が膨大過ぎて迷惑だという旨をASPのV社に返信したが、それに対する返信はなく、要するに「我慢しろ」ということなのだろう。
それではと、不正クリックサービスの提供元であるAmazon Web Services (AWS) のabuseにサーバーの生ログを添えて通報すると、通報から10日経った頃に返ってきたメールは、
> We were unable to identify the customer responsible for the reported activity.
> Due to the frequency with which AWS public IP addresses can change ownership
とのことで(バカか)、もはや不正クリック代行業者どもが泣いて喜びそうなお粗末な現状である。
アフィリエイトサイト運営者は今すぐサーバーの生ログをチェックし、広告URLに異様な足跡が残っていないか確認すべきだろう。ヤフーリスティング広告の場合、不正クリックによる返金期限は過去60日しか遡れない。
あ、そうそう、最近ASKAで話題のギフハブらしき痕跡もあった。
ec2-52-198-19-198.ap-northeast-1.compute.amazonaws.com - - [23/Aug/2016:18:09:45 +0900] "GET ***** HTTP/1.1" 200 27625 "-" "Mechanize/2.7.0 Ruby/2.0.0p451 (http://github.com/sparklemotion/mechanize/)"
以上のような組み合わせで出くわした困ったことと、その解決策をメモしておきます。
Python was built with Visual Studio 2003;
extensions must be built with a compiler than can generate compatible binaries.
Visual Studio 2003 was not found on this system. If you have Cygwin installed,
you can try compiling with MingW32, by passing "-c mingw32" to setup.py.
setup.pyに.iファイルとか.cppファイルを記述して実行すると、こんな感じのエラーメッセージが表示されました。うーん、困った!
http://labs.cybozu.co.jp/blog/mitsunari/2007/08/vc2005boostpython.html
上記のページを参考にして、"%Pythonをインストールしたフォルダ%/Lib/distutils/msvcompiler.py"を以下のように修正してみたら解決できました。ありがとうありがとう!
--- msvccompiler.py 2007-04-04 17:17:12.000000000 +0900 +++ @@ -126,7 +126,7 @@ self.set_macro("FrameworkDir", net, "installroot") try: if version > 7.0: - self.set_macro("FrameworkSDKDir", net, "sdkinstallrootv1.1") + self.set_macro("FrameworkSDKDir", net, "sdkinstallrootv2.0") else: self.set_macro("FrameworkSDKDir", net, "sdkinstallroot") except KeyError, exc: # @@ -252,7 +252,10 @@ def initialize(self): self.__paths = [] - if os.environ.has_key("DISTUTILS_USE_SDK") and os.environ.has_key("MSSdk") and self.find_exe("cl.exe"): + if self.__version >= 7.1 or ( + os.environ.has_key("DISTUTILS_USE_SDK") and + os.environ.has_key("MSSdk") and + self.find_exe("cl.exe")): # Assume that the SDK set up everything alright; don't try to be # smarter self.cc = "cl.exe" @@ -288,10 +291,16 @@ self.preprocess_options = None if self.__arch == "Intel": - self.compile_options = [ '/nologo', '/Ox', '/MD', '/W3', '/GX' , - '/DNDEBUG'] - self.compile_options_debug = ['/nologo', '/Od', '/MDd', '/W3', '/GX', - '/Z7', '/D_DEBUG'] + if self.__version >= 7.1: + self.compile_options = [ + '/nologo', '/Ox', '/MD', '/W3', '/EHsc', '/DNDEBUG'] + self.compile_options_debug = [ + '/nologo', '/Od', '/MDd', '/W3', '/EHsc', '/Z7', '/D_DEBUG'] + else: + self.compile_options = [ + '/nologo', '/Ox', '/MD', '/W3', '/GX', '/DNDEBUG'] + self.compile_options_debug = [ + '/nologo', '/Od', '/MDd', '/W3', '/GX', '/Z7', '/D_DEBUG'] else: # Win64
setup.pyを実行するとcl.exeが見つからないみたいなエラーが表示されました。これは、アレだ。「パス通せ!」ということですね。bashを起動するときのバッチファイル(たぶん"cygwin.bat"とか)で、以下のような行を入れてやれば解決しました。
call "%VS80COMNTOOLS%vsvars32.bat"
d:\python25\include\pyconfig.h(189) : fatal error C1083: include ファイルを開けません。'basetsd.h': No such file or directory
setup.pyを実行すると、上のようなエラーが表示されました。
http://d.hatena.ne.jp/ousttrue/20070531/1180556273
上記のサイトを見るとインクルードパスが通っていない場所に"basetsd.h"があるのが原因なので、"cygwin.bat"にインクルードパスの設定をしておきました。
call "%VS80COMNTOOLS%vsvars32.bat" set INCLUDE=C:\Program Files\Microsoft Platform SDK\Include;%INCLUDE%
link: extra operand `/INCREMENTAL:NO'
詳しくは `link --help' を実行して下さい.
これは、cygwinのほうのlink.exeが実行されてるのが原因でした。スマートな解決策ではありませんが、cygwinのほうのlink.exeをリネームして解決。パスの設定順序とかでどうにかできるといいんだけど、どうすればいいんかな。
MSVCR80.dllが見つからなかったため、このアプリケーションを開始できませんでした。アプリケーションをインストールし直すとこの問題は解決される場合があります。
SWIGが生成した.pyファイルをimportしたら、こんな感じのエラーダイアログが表示されたよ。うーん、困った!
http://d.hatena.ne.jp/moriyoshi/20070525
上記のページを参考にして、"%Pythonをインストールしたフォルダ%/python.exe.manifest"として以下のようなファイルを新しく作ったら、解決できました。ありがとうありがとう!
あとこれ、bashから実行したらエラーダイアログが表示されず、importするモジュールが見つからないみたいなエラーメッセージが出力されるだけだったよ。
<?xml version='1.0' encoding='UTF-8' standalone='yes'?> <assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'> <dependency> <dependentAssembly> <assemblyIdentity type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' /> </dependentAssembly> </dependency> </assembly>