python 正規表現について
特殊シーケンス | 説明 | 同義のパターン |
---|---|---|
\d | 任意の数字 | [0-9] |
\D | 任意の数字以外 | [^0-9] |
\s | 任意の空白文字 | [\t\n\r\f\v] |
\S | 任意の空白文字以外 | [^\t\n\r\f\v] |
\w | 任意の英数字 | [a-xA-Z0-9_] |
\W | 任意の英数字以外 | [\a-xA-Z0-9_] |
\A | 文字列の先頭 | ^ |
\Z | 文字列の末尾 | $ |
文字 | 説明 | 例 | マッチする例 |
---|---|---|---|
? | 0回または1回 | ab? | a, ab |
. | 任意の一文字 | a.c | abc, acc, aac |
^ | 文字列の先頭 | ^abc | abcdef |
$ | 文字列の末尾 | abc$ | defabc |
* | 0回以上の繰り返し | ab* | a, ab, abb, abbb |
+ | 1回以上の繰り返し | ab+ | ab, abb, abbb |
{n} | n回の繰り返し | a{2} | aa |
和集合(または) | a|b | a, b | ||
() | グループ化 | (abc)+ | abc, abcabc |
,,,python report[report['ランディング ページ'].str.contains('12')] ,,,
文字列を含む条件分岐
def func_cate(x): if "test" in x: return "0" elif "test1" in x: return "1" elif test2" in x: return "2" rename1['cate'] = rename1['ページ タイトル'].apply(func_cate) rename1.tail(10)
python seleniumでスクレイピング
↓seleniumでスクレイピングして、タイトルとURLをCSVに保存する。
from selenium import webdriver browser = webdriver.Firefox() url = "http://b.hatena.ne.jp/search/text?safe=on&q=Python&users=5" browser.get(url) df2 = pd.read_csv('trend.csv', index_col=0) posts = browser.find_elements_by_css_selector(".search-result") for post in posts: title = post.find_element_by_css_selector("h3").text bookmarks = post.find_element_by_css_selector('h3 > a').get_attribute('href') se = pd.Series([title,bookmarks],['title','bookmarks']) df2 = df2.append(se, ignore_index=True) df2.to_csv("trend2.csv")