Example #1
0
def fetch_page(page_url):
    html = fetch_url(page_url)
    html = html.decode()
    # print( html)
    match = re.findall(r'<img src="([^"]+.douban.com/view/group_topic/large/public/p\d+\.jpg)"', html)
    if match is None:
        print("no image in this page\n")
        return False
    file_table = kv.get("attitude")
    page_images = kv.get("page_images")
    image_page = kv.get("image_page")
    for image_url in match:
        file_name = image_url[image_url.rfind("/") + 1 :]
        file_name = "images/" + file_name
        image_page[file_name] = page_url
        page_images.setdefault(page_url, []).append(file_name)
        page_images[page_url] = list(set(page_images[page_url]))
        kv.save("page_images", page_images)
        kv.save("image_page", image_page)
        if file_name in file_table:
            if file_table[file_name] == "d":
                print("hate", file_name)
                continue
        if os.path.isfile(file_name):
            print("skip", file_name)
            continue
        print("save", file_name)
        urllib.request.urlretrieve(image_url, file_name)
Example #2
0
def fetch_page(page_url):
    html = fetch_url(page_url)
    html = html.decode()
    # print( html)
    match = re.findall(
        r'<img src="([^"]+.douban.com/view/group_topic/large/public/p\d+\.jpg)"',
        html)
    if match is None:
        print("no image in this page\n")
        return False
    file_table = kv.get('attitude')
    page_images = kv.get('page_images')
    image_page = kv.get('image_page')
    for image_url in match:
        file_name = image_url[image_url.rfind('/') + 1:]
        file_name = 'images/' + file_name
        image_page[file_name] = page_url
        page_images.setdefault(page_url, []).append(file_name)
        page_images[page_url] = list(set(page_images[page_url]))
        kv.save('page_images', page_images)
        kv.save('image_page', image_page)
        if file_name in file_table:
            if file_table[file_name] == 'd':
                print('hate', file_name)
                continue
        if os.path.isfile(file_name):
            print("skip", file_name)
            continue
        print("save", file_name)
        urllib.request.urlretrieve(image_url, file_name)
Example #3
0
            print('default is Pass')
            action = 'p'
        attitude[f] = action
        if action == 'd':
            print('delete', f)
            os.remove(f)
        if action == 'la' or action == 'da':
            if can_open:
                action = action[0]
                page_images = kv.get('page_images')
                images = page_images[page_url]
                for image in images:
                    if image not in attitude:
                        print(action, image)
                        attitude[image] = action
                    else:
                        print('u already', attitude[image], image)
            else:
                print('error, can not do to all')
                continue

        if action == 'o':
            if can_open:
                webbrowser.open(page_url)
            else:
                print('error, can not open')
        else:
            break

    kv.save('attitude', attitude)
Example #4
0
# -*- coding: UTF-8 -*-

import os
import kv
import cgi
import json
import log

# enable debugging
import cgitb
cgitb.enable()

print("Content-Type: application/json;charset=utf-8\r")
print("\r")

root = os.getcwd()

attitude_map = kv.get('attitude')

post = cgi.FieldStorage()

action = post['action'].value
action = action[0]
f = post['file'].value
attitude_map[f] = action
file_path = root+'/'+f
if action == 'd' and os.path.isfile(file_path):
    os.remove(file_path)
kv.save('attitude', attitude_map)
print(json.dumps({'code': 0, 'action':action, 'file': f}));
Example #5
0
import os
import kv
import cgi
import json
import log

# enable debugging
import cgitb

cgitb.enable()

print("Content-Type: application/json;charset=utf-8\r")
print("\r")

root = os.getcwd()

attitude_map = kv.get("attitude")

post = cgi.FieldStorage()

action = post["action"].value
action = action[0]
f = post["file"].value
attitude_map[f] = action
file_path = root + "/" + f
if action == "d" and os.path.isfile(file_path):
    os.remove(file_path)
kv.save("attitude", attitude_map)
print(json.dumps({"code": 0, "action": action, "file": f}))
Example #6
0
            print('default is Pass')
            action = 'p'
        attitude[f] = action
        if action == 'd':
            print('delete', f)
            os.remove(f)
        if action == 'la' or action == 'da':
            if can_open:
                action = action[0]
                page_images = kv.get('page_images')
                images = page_images[page_url]
                for image in images:
                    if image not in attitude:
                        print(action, image)
                        attitude[image] = action
                    else:
                        print('u already',attitude[image],image)
            else:
                print('error, can not do to all')
                continue

        if action == 'o':
            if can_open:
                webbrowser.open(page_url)
            else:
                print('error, can not open')
        else:
            break

    kv.save('attitude', attitude)